Quarkus 3.0

Par:
fredericmazue

mer, 03/05/2023 - 16:32

Quarkus est un framework full-stack Java natif pour Kubernetes. Quarkus est un projet lancé et soutenu par Red Hat. Quarkus est conçu pour les machines virtuelles Java (JVM) et la compilation native, qui permet d'optimiser Java spécifiquement pour les conteneurs afin d'en faire une plate-forme efficace pour les environnements sans serveur, cloud et Kubernetes. Quarkus vient de sortir en version 3.0.

Quarkus 2 était basé sur Jakarta EE 8. Quarkus 3 est basé sur Jakarta EE 10.

Le changement le plus visible est que les packages javax.* de Jakarta EE ont été déplacés vers jakarta.*. Cette modification nécessite de modifier tout code source et toute dépendance et ses dépendances transitives qui reposent sur les packages javax.*.

Le changement de cible Jakarta EE 10 apporte deux améliorations majeures :

  • L'écosystème Java plus large se déplace vers les dépendances de Jakarta, permettant un partage plus facile et des implémentations compatibles.
  • CDI introduit la notion de CDI Lite et Build Compatible Extensions (BCE), qui permettent des extensions standard compatibles entre les implémentations CDI et tirent parti des optimisations de temps de construction de Quarkus.

L'un des plus grands changements dans Quarkus 3 est que Hibernate ORM est mis à jour de la version 5 à la version 6.2.

Pour les développeurs

Pour le projet Quarkus, l'expérience des développeurs est un aspect clé, et ce point est constamment amélioré. Ainsi la CLI Quarkus est désormais extensible avec des plugins. Voir les détails dans le guide CLI. De nombreuses nouvelles fonctionnalités pour la CLI viendront sous la forme de plugins dans un avenir proche.

Quarkus 3.0 dispose d'un nouvel outil de mise à jour qui simplifie radicalement la mise à jour des projets vers la dernière version de Quarkus.

Quarkus CLI et les plugins Maven et Gradle ont désormais la possibilité de déployer les applications Quarkus :

quarkus deploy
mvn quarkus:deploy
gradle deploy

Cela permet le déploiement d'applications Quarkus sur des plates-formes telles que Kubernetes, Knative et OpenShift. Le tout sans nécessiter de modifications des dépendances ou de la configuration du projet, ce qui simplifie l'expérience des développeurs.

Maven 3.9 a apporté quelques changements de rupture, et l'intégration avec Quarkus ne fonctionnait pas correctement. Il est maintenant corrigé et vous pouvez utiliser Maven 3.9 pour créer vos applications Quarkus 3. Maven 3.8.2 est également la configuration minimale requise pour les projets Quarkus 3.

Enfin le support Gradle a été mis à niveau vers Gradle 8.

Site : quarkus.io/quarkus3