Le tour d'horizon dans l'écosystème Java de cette semaine du 2 août 2021, présente des nouvelles d'OpenJDK, l'initial release candidate du JDK 17, JDK 18, Spring Cloud 2021.0.0-M1, Quarkus 2.1.1, Open Liberty 21.0.0.8, des images Docker de WildFly 24.0.1 S2I, Hibernate ORM 5.5.6, JReleaser 0.6.0, Apache Camel 3.11.1 et MicroStream 5 qui est désormais open-source.
OpenJDK
La JEP 416, Reimplement Core Reflection with Method Handles, est passé du statut Draft à celui de Candidate. Cette JEP propose de réimplémenter les classes de java.lang.reflect
, Method
, Constructor<T>
et Field
, en plus des méthodes handles définis dans java.lang.invoke
. Ces méthodes handles serviront désormais de mécanisme pour la réflexion afin de réduire les coûts de maintenance et de développement des deux packages.
JDK 17
JDK 17 est entré dans sa phase initial release candidate la semaine dernière. Conformément au processus de publication du JDK, le le référentiel de stabilisation du JDK 17 n'est ouvert que pour les corrections de bugs critiques. Cette phase sera en vigueur pour les deux prochaines semaines.
La version 35 du JDK 17 release candidate builds a été rendue disponible la semaine dernière, avec des mises à jour du build 34 qui incluent des correctifs pour divers problèmes. Plus de détails peuvent être trouvés dans les release notes.
InfoQ a récemment fourni une analyse complète de cette prochaine version LTS prévue pour le 14 septembre, 2021.
JDK 18
La version 9 du JDK 18 early-access builds a également été rendue disponible, avec des mises à jour du Build 8 qui incluent des correctifs pour divers problèmes. Plus de détails peuvent être trouvés dans les release notes.
Pour les JDK 17 et JDK 18, les développeurs sont encouragés à signaler les bugs via la Java Bug Database.
Spring Framework
La première version milestone de Spring Cloud 2021.0.0 a été mise à disposition pour la communauté Java. Nom de code Jubilee, cette version est compatible avec Spring Boot 2.6.0-M1 et propose de nombreuses mises à jour des sous-projets Spring Cloud Gateway, Sleuth, OpenFeign, Kubernetes, Task, Config et Contract. Vous trouverez plus de détails dans les release notes.
Quarkus
Moins d'une semaine après la sortie de Quarkus 2.1, Red Hat a fourni une version de maintenance, Quarkus 2.1.1.Final, corrigeant les problèmes avec JaCoCo et Keycloak, et l'ajout de capacités pour les extensions elasticsearch-rest-high-level-client
et mongodb-client
. Plus de détails peuvent être trouvés dans le changelog.
Open Liberty
IBM a promu Open Liberty 21.0.0.8 à partir de sa version bêta qui introduit l'IBM Semeru Runtimes, une nouvelle demeure pour les builds Java d'OpenJ9 qui sont directement hébergées par IBM.
Open Liberty 21.0.0.9-beta a été publié avec une nouvelle méthode, isActive()
, qui a été ajouté au ServerEndpointControlMBean
pour déterminer si un endpoint existe, a démarré et n'est pas suspendu.
WildFly
Les images Docker de WildFly 24.0.1 Source-to-Image (S2I) ont été publiées sur quay.io, l'utilitaire de Red Hat pour créer, analyser et distribuer des images pour conteneurs. Ces nouvelles images S2I ont été ajoutées au Helm Chart for WildFly et un exemple d'application utilisant MicroProfile peut être trouvé sur GitHub.
Hibernate
Ce fut une semaine chargée pour Hibernate car il y avait un certain nombre de versions pour les projets Hibernate ORM et Reactive.
Les version d'Hibernate ORM 5.5.5.Final et 5.5.6.Final ont été publiées avec des corrections de bugs telles qu'une erreur de dépassement de pile causée par le processeur d'annotation hibernate-jpamodelgen
qui ne parvient pas à générer un métamodèle lors de la compilation d'une définition de variable de type récursif.
Sur la route vers Hibernate ORM 6.0, l'objectif principal est d'améliorer les performances du throughput d'Hibernate en changeant la stratégie read-by-name à read-by-position qui affecte les appels passés à l'interface ResultSet
. La version Alpha9 intègre la plupart de ces changements de stratégie et corrige les échecs des test associés.
Hibernate Reactive 1.0.0.CR9 a été publié avec une intégration de Microsoft SQL Server.
JReleaser
JReleaser 0.6.0 a été publiée, avec : des mises à jour du packaging avec Homebrew et SDKMAN! ; la possibilité de configurer une variable d'URL de téléchargement avec des uploaders tels que JFrog Artifactory et HTTP ; et un packager Docker qui permet aux fichiers empaquetés (Dockerfile
+ fichiers de support) d'être publiés dans un référentiel Git défini par l'utilisateur. De plus amples détails peuvent être trouvés dans le changelog.
Apache Camel
Un peu plus d'un mois après la version d'Apache Camel 3.11.0, la première maintenance release, la version 3.11.1 a été mise à disposition par l'Apache Software Foundation. Cette version propose des mises à niveau des dépendances vers Spring Boot 2.5.3, Camel Spring Boot 2.5.2 et Vert.x 4.1.1. Apache Camel, un framework d'intégration basé sur des Enterprise Integration Patterns, prend en charge plus de 50 formats de données qui permettent aux développeurs d'intégrer des systèmes qui produisent et consomment des données. Vous trouverez plus de détails dans les release notes.
MicroStream Framework
MicroStream a annoncé que la version 5.0 de leur framework Java de persistance et d'outils de base de données est désormais open-source. Les développeurs intéressés à contribuer à MicroStream peuvent commencer par visiter leur nouveau référentiel. InfoQ suivra avec une nouvelle plus détaillée.