This week’s Java roundup for March 21st, 2022 features news from JDK 18, JDK 19, JDK Mission Control 8.2, Amazon Corretto 18, BellSoft LibericaJDK 18, multiple Spring milestone and point releases, Micronaut 3.4.0, GraalVM Native Build Tools 0.9.11, WildFly 26 Beta 1, Hibernate Reactive 1.1.4.Final, MicroStream 7.0-M1, JReleaser 1.0-RC1, and TornadoVM 0.13.
Oracle has released version 18 of the Java programming language and virtual machine this past week that ships with a final feature set of nine JEPs. More details may be found in this InfoQ news story.
Build 15 of the JDK 19 early-access builds was made available this past week, featuring updates from Build 14 that include fixes to various issues. More details may be found in the release notes.
For JDK 19, developers are encouraged to report bugs via the Java Bug Database.
JDK Mission Control
JDK Mission Control (JMC) 8.2.0 was released featuring: support for Eclipse 2021-06 and later; a binary build for Apple ARM allowing JMC to be run natively on Apple M1; parser support for frame types generated by
async profiler; and a new rule for explicit invocations of
System.gc(). JMC requires JDK 11+, but may still be used to parse JFR recordings from OpenJDK 8u272+ and Oracle JDK 7u40+.
Amazon has released Amazon Corretto 18, their downstream distribution of OpenJDK 18, that is available on Linux, Windows, and macOS. Developers may download this latest version from this site.
BellSoft Liberica JDK
Similarly, BellSoft has released LibericaJDK 18, their downstream distribution of JDK 18. Developers may download this latest version from this site.
After a relatively quiet couple of weeks, the team at Spring was quite busy this past week having provided multiple milestone and point releases.
There were multiple releases of Spring Boot. Versions 2.5.11 and 2.6.5 feature a total of 56 and 66 bug fixes, dependency upgrades and improvements in documentation, respectively.
Spring Boot 2.7.0-M3 includes new features such as: support for generating Docker images with Podman; improved support for the
SanitizingFunction interface; and support for Spring GraphQL 1.0.0-M6. Further details may be found in these release notes.
Spring Boot 3.0.0-M2 includes new features such as: reinstated support for Ehcache 3 and the H2 Console application as both are now compatible with Jakarta EE 9; and improved detection with the
@ConstructorBinding annotation used in conjunction with
@ConfugurationProperties. More details may be found in these release notes.
Multiple releases of Spring Data were also made available this past week. Point releases 2021.1.3, and 2021.0.10 provide bug fixes and dependency upgrades and may be consumed with Spring Boot versions 2.6.5 and 2.5.11, respectively.
Spring Data 2021.2.0-M4, codenamed Raj, ships with a number of new features related to the Spring Data subprojects and may be consumed with Spring Boot 2.7.0-M3.
Spring Data 2022.0.0-M3, codenamed Turing, also ships with new features to include: JDK 17 as a baseline; and support for Spring Framework 6 and Jakarta EE 9. This version may be consumed with Spring Boot 3.0.0-M2.
The sixth milestone release of Spring for GraphQL 1.0 was made available to include a new GraphQL Client and an updated GraphQL Tester to align with the new client. This is the final milestone release and the team plans the first release candidate by the end of April 2022 and a GA release on May 17, 2022.
Spring Security 6.0.0-M3 and 5.7.0-M3 have been released to include: deprecation of the
WebSecurityConfigurerAdapter class; and support enhancements for SAML 2.0 and OAuth 2.0.
The second milestone of Spring Batch 5.0 was made available featuring: a new Observation API from Micrometer 2.0 which provide both metrics and tracing for batch jobs; and the addition of HANA, an in-memory, column-oriented, relational database management system created by SAP, as a supported database for the job repository. Further details may be found in this changelog.
Spring Authorization Server 0.2.3 has been released that ships with a number of new features, bug fixes and dependency upgrades. More details may be found in these release notes.
The Micronaut Foundation has released Micronaut 3.4.0 that ships with new features such as: the ability to conditionally load other beans properties with the
@Requires annotation; the ability to inject an implementation of the
LocalizedMessageSource interface in a controller to resolve localized messages for the current HTTP request; and Micronaut Data MongoDB is now part of Micronaut Data 3.3.0. Further details may be found in the changelog.
GraalVM Native Build Tools
On the road to version 1.0, Oracle Labs has released version 0.9.11 of Native Build Tools, a GraalVM project consisting of plugins for interoperability with GraalVM Native Image. This latest release provides: the ability to use environment variables in native tests; integration of the GraalVM native configuration repository with Gradle; a rename of the Gradle
metadataRepository; and a fix in which the
@arg file was not being used for Maven tests. More details may be found in the release notes.
TornadoVM, an open-source software technology company, has released TornadoVM version 0.13 that ships with new features and improvements such as : integration with JDK 17 and Graal 21.3.0; native functions enabled by default; multiple improvements in the SPIR-V Backend; an improved installation script; and support for extended intrinsics related to math operations.
Juan Fumero, research associate, Advanced Processor Technologies Research Group at The University of Manchester, introduced TornadoVM at QCon London in March 2020 and has since contributed this more recent InfoQ technical article.