This week’s Java roundup for April 28th, 2025 features news highlighting: four JEPs proposed to target and targeted for JDK 25; new JEPs; three new JEPs; the eighth milestone release of Spring AI 1.0.0; Quarkus 3.22.0; the first release candidate of LangChain4j 1.0.0; the release of JReleaser 1.18.0; and Wildfly joins the Commonhaus Foundation.
OpenJDK
Two JEPs have been elevated from Proposed to Target to Targeted for JDK 25, namely: JEP 512, Compact Source Files and Instance Main Methods, and JEP 511, Module Import Declarations, announced here and here, respectively.
Two JEPs have been elevated from Candidate to Proposed to Target for JDK 25, namely: JEP 513, Flexible Constructor Bodies, and JEP 505, Structured Concurrency (Fifth Preview), announced here and here, respectively. Their reviews are expected to conclude by May 8, 2025.
Details for each of these four JEPs may be found in this InfoQ news story.
JEP 517, HTTP/3 for the HTTP Client API, has been elevated from its JEP Draft 8291976 to Candidate status. This JEP proposes to “update the HTTPClient
API to support the HTTP/3 protocol, so that libraries and applications can interact with HTTP/3 servers with minimal code change.“
JEP 515, Ahead-of-Time Method Profiling, has been elevated from its JEP Draft 8325147 to Candidate status. This JEP proposes to improve application warmup time by “making method-execution profiles from a previous run of an application instantly available, when the HotSpot JVM starts.” This allows the JIT compiler to immediately generate native code upon application startup as opposed to waiting for profiles to be collected.
JEP 470, PEM Encodings of Cryptographic Objects (Preview), has been elevated from its JEP Draft 8300911 to Candidate status. This JEP previews “an API for encoding objects that represent cryptographic keys, certificates, and certificate revocation lists into the widely-used Privacy-Enhanced Mail (PEM) transport format, and for decoding from that format back into objects.” This feature will support conversions between PEM text and cryptographic objects in PKCS #8 and X.509 binary formats.
JDK 25
Build 21 of the JDK 25 early-access builds was made available this past week featuring updates from Build 20 that include fixes for various issues. More details on this release may be found in the release notes.
For JDK 25, developers are encouraged to report bugs via the Java Bug Database.
Spring Framework
The eighth milestone release of Spring AI 1.0.0 features “several significant changes [that] would become breaking changes in an [upcoming] RC1 release.” This additional milestone release serves as a transition for providing the deprecated API along wit the corresponding replacement APIs. More details on this release may be found in the upgrade notes and release notes.
The first release candidate of Spring Cloud 2025.0.0, codenamed Northfields, features bug fixes and notable updates to sub-projects: Spring Cloud Kubernetes 3.3.0-RC1; Spring Cloud Function 4.3.0-RC1; Spring Cloud Stream 4.3.0-RC1; and Spring Cloud Circuit Breaker 3.3.0-RC1. This release is based on Spring Boot 3.5.0-RC1. More details on this release may be found in the release notes.
Quarkus
The release of Quarkus 3.22.0 features: Compose Dev Services that discover Compose specification files in a Quarkus application; a dedicated user interface to execute Hibernate Query Language (HQL) queries; and an improved test class loading infrastructure using a runtime classloader. More details on this release may be found in the release notes.
LangChain4j
The first release candidate (along with the fourth beta release) of LangChain4j delivers fie modules released under the release candidate, namely: langchain4j-core
; langchain4j
; langchain4j-http-client
; langchain4j-http-client-jdk
and langchain4j-open-ai
wit the the remaining modules still under the milestone 4 release. Breaking changes include: a rename of the ChatLanguageModel
and StreamingChatLanguageModel
interfaces to ChatModel
and StreamingChatModel
, respectively; and a renaming and reshuffling of some internal utility classes that the team recommends that should not be directly used (even if they are public
as these classes are now annotated with @Internal
. More details on this release may be found in the release notes.
JReleaser
Version 1.18.0 of JReleaser, a Java utility that streamlines creating project releases, has been released to deliver: support for Forgejo, a self-hosted lightweight software forge; allow the native-image assembler to create FLAT_BINARY
distributions; and support for deploying to the Sonatype Nexus 3 repository manager (NXRM3). More details on this release may be found in the release notes.
Commonhaus Foundation
The Commonhaus Foundation, a non-profit organization dedicated to the sustainability of open source libraries and frameworks, has announced that WildFly has joined the foundation this past week as a member project. In a blog post published in early-February 2025, Brian Stansberry, Senior Principal Software Engineer at Red Hat, described their rationale to transition to the foundation, writing:
WildFly has been a successful project for a long time now, and I believe that’s largely because we are passionate about serving our community. To help us continue on this path, we are considering moving WildFly to a vendor-neutral software foundation. Our hope is that by doing this we could further expand our community, improve our openness and transparency, refresh our governance model, and encourage more participation by contributors not affiliated with Red Hat.
Other notable projects that have joined the foundation include: Infinispan, Debezium, JReleaser, JBang, OpenRewrite, SDKMAN, EasyMock, Objenesis and Feign.