The English version of quarkus.io is the official project site. Translated sites are community supported on a best-effort basis.

Quarkus 3.0.0.Alpha5 released - now with Hibernate ORM 6, new Dev UI and more!

We are in the process of getting Quarkus 3 ready - with the last alpha, we got our main branch to Jakarta EE 10 to let us getting more things integrated and tested faster. This time we move from Hibernate 5 to Hibernate 6 - which will cause breakages thus please read the section below for details if you are a Hibernate ORM and especially Hibernate Reactive user!

On top of it all is a new and improved Dev UI!

newdevui

The list of highlights for this release is:

Hibernate ORM 6

Hibernate ORM 6 is a major upgrade to the main persistence layer of Quarkus. It brings a lot of improvements and new features, but also some breaking changes. We will do our best to make the migration as smooth as possible, but some changes are unavoidable.

We have started a Hibernate ORM 5 to 6 migration guide for Quarkus users to help you with the migration.

Take particular note of the "Best-effort Hibernate ORM 5.6 compatability switch" which can reduce the impact of the default schema changes in Hibernate 6 and give you more time to migrate.

We want to improve and simplify these migration steps in preparation for Quarkus 3 thus do please report migration issues you encounter so we can improve the migration documentation and scripts.

Hibernate Reactive Temporarily Disabled

An early alpha version of Hibernate Reactive 2 is under active development and unfortunately not ready for use.

In name of getting early feedback on all other parts of Quarkus we have excluded Hibernate Reactive from the Alpha5 relese. We are working hard on re-enabling it for an upcoming future release.

Inject Hibernate StatelessSession

One of my favorite least-known features of Hibernate is the StatelessSession which is a lightweight session that does not track any state. It is perfect for batch processing and for those with a preference for a command oriented use-cases (insert,delete,update,…​) over managed entities.

Before this release you had to manually configure it - with Quarkus 3 you can now simply inject a StatelessSession:

@Inject
StatelessSession statelessSession;

You can read more about StatelessSession in the Hibernate ORM guide.

新しいDev UI

Quarkus 2 introduced the Dev UI which provides a web ui to use during development. Extensions could provide their own Dev UI pages to provide additional functionality.

Quarkus 3 now has a new Dev UI which is more extensible and easier to use. It also has a new look and feel.

For now the new Dev UI is served at http://localhost:8080/q/dev-ui

The old Dev UI is still the default as not all extensions have migrated.

QuarkusのYouTubeチャンネルでは、新しいDev UIの紹介、新機能の説明、使い方や拡張方法などを紹介する プレイリスト を公開しています。

すべての開発ツールで quarkus deploy

Quarkus CLI and the Maven and Gradle plugins now have the ability to deploy.

quarkus deploy
mvn quarkus:deploy
gradle deploy

This enables the deployment of Quarkus applications to platforms like Kubernetes, Knative and OpenShift. All without requiring changes to the project dependencies or configuration and therefore simplifying developer experience.

Quarkus 3を試してみる

今のところ、最も簡単な方法は、 code.quarkus.io を使用するか、Quarkus CLIを使用することです:

quarkus create app --stream=3.0

Mind you that at this stage, while all the core extensions are available, only parts of the Quarkus platform is present. Not all extensions have yet migrated to Jakarta packages (e.g. Camel Quarkus or Kogito are not yet available).

Quarkus 3へのアップグレード

すべてのエクステンションが利用可能な既存のアプリケーションについては、OpenRewriteのレシピを用意していますので、お試しください。

There is a one-liner that attempts to do it automatically using a JBang script.

JBangが既にインストールされている場合は、次を実行してください:

jbang --fresh upgrade-to-quarkus3@quarkusio

そうでない場合は、LinuxとmacOSの場合は次を実行下さい:

curl -Ls https://sh.jbang.dev | bash -s - --fresh upgrade-to-quarkus3@quarkusio

Windowsの場合は次を実行下さい:

iex "& { $(iwr https://ps.jbang.dev) } --fresh upgrade-to-quarkus3@quarkusio"

これを実行すると、プロジェクトの依存関係、ソースコード、ドキュメントがQuarkus 3を使用するように更新されます。

もしうまくいかない場合は、私たちが何か見落としているか、Quarkus 3をサポートしていないエクステンションを使用している可能性があります。

Let us know in either case so we can together improve the migration script.

参加のお誘い

私達は皆様からのフィードバックに重きを置いています。バグ報告、改善要望を是非お願いします。一緒に素晴らしいものを作り上げていきましょう!

Quarkusユーザーの場合でも、単に興味を持っているだけの場合でも、恥ずかしがらずにコミュニティに参加して下さい!: