Quarkus 3.0.0.Alpha3 released - Third iteration of our Jakarta EE 10 stream
As you might know by now, we started a Quarkus 3.0 effort last year and we are continuing this effort, which was described here, here, here, and here.
Quarkus 3.0.0.Alpha3 is the third iteration of this work.
On the Jakarta EE 10 front, it doesn’t bring anything new, except for a few bugfixes and upgrades.
But it comes with some significant changes:
-
This version is based on our current
main
branch: it contains all the refinements of 2.15.0.Final, 2.15.1.Final, 2.15.2.Final, 2.15.3.Final, and 2.16.0.Final. -
It upgrades Quarkus to Mutiny 2 and the Java Flow API.
-
It simplifies how Kotlin is handled by our classloader, which should ease the work on Kotlin-based Quarkus extensions.
We plan to release the next Alpha in about a month. Until then, we encourage you to test it and report your feedback.
Trying out Quarkus 3
For now the easiest way to get started is using code.quarkus.io or use the 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).
Upgrading to Quarkus 3
For existing applications where all extensions are available, we have an early OpenRewrite recipe that you can try.
There is a one-liner that attempts to do it automatically using a JBang script:
For Linux:
curl -Ls https://sh.jbang.dev | bash -s - --fresh upgrade-to-quarkus3@quarkusio
For Windows:
iex "& { $(iwr https://ps.jbang.dev) } --fresh upgrade-to-quarkus3@quarkusio"
Using the JBang script also migrates the documentation (in Markdown on AsciiDoc). It is the preferred method as the one presented below will only migrate the source code. |
You can also do it manually by downloading the OpenRewrite recipe and apply it manually with the following Maven command:
curl -o quarkus3.yml https://raw.githubusercontent.com/quarkusio/quarkus/main/jakarta/quarkus3.yml
mvn org.openrewrite.maven:rewrite-maven-plugin:4.39.0:run \
-Drewrite.configLocation=quarkus3.yml \
-DactiveRecipes=io.quarkus.openrewrite.Quarkus3
For multi-module projects, it is recommended to specify an absolute path in the |
Once this has been run your project should have its dependencies and source code updated to use Quarkus 3.
If it does not work for you, it could be we missed something or you are using extensions not yet supporting Quarkus 3.
Let us know in either case so we can together improve the migration script.
Únete a nosotros
Valoramos mucho tus comentarios, así que por favor reporta errores, solicita mejoras… ¡Construyamos algo grandioso juntos!
Si eres un usuario de Quarkus o simplemente tienes curiosidad, no seas tímido y únete a nuestra acogedora comunidad:
-
proporcionar retroalimentación en GitHub;
-
escribir algo de código y enviar push a PR;
-
comentar con nosotros en Zulip y en nuestra lista de correo;
-
hacer tus preguntas en Stack Overflow.