JDK 25 Early-Access Release Notes

This is a draft of the release notes that will accompany JDK 25. The contents are subject to change until release.

Build 4

jlink --add-modules ALL-MODULE-PATH requires explicit --module-path argument (JDK-8345259)

tools/jlink

Starting with JDK 24, jlink --add-modules ALL-MODULE-PATH option will require users to set the module path via --module-path option. Prior to JDK 24, --add-modules ALL-MODULE-PATH without --module-path can be used to create an image with all JDK modules from $JAVA_HOME/jmods. In JDK 24, to create an image using ALL-MODULE-PATH, it is required to explicitly set --module-path.

To create an image with all JDK modules, use jlink --add-modules ALL-MODULE-PATH --add-modules $JAVA_HOME/jmods instead.

Build 3

Update XML Security for Java to 3.0.5 (JDK-8344137)

security-libs/javax.xml.crypto

The XML Signature implementation has been updated to Santuario 3.0.5. Support for four new SHA-3 based ECDSA SignatureMethod algorithms have been added: SignatureMethod.ECDSA_SHA3_224, SignatureMethod.ECDSA_SHA3_256, SignatureMethod.ECDSA_SHA3_384, and SignatureMethod.ECDSA_SHA3_512.

Not Yet Integrated

jpackage no longer includes service bindings by default for generated run-time images (JDK-8345185)

tools/jpackage

Starting with JDK 25, jpackage will no longer include service bindings for a run-time image that it creates. Prior to JDK 25, jpackage would include service bindings for run-time images. As a result, the generated run-time images produced by jpackage might not include the same set of modules as it did in prior versions.

The previous behaviour can be achieved with jpackage of JDK 25 by adding the --bind-services jlink option to the default jlink options jpackage uses:

jpackage [...] --jlink-options 
   "--strip-native-commands --strip-debug --no-man-pages --no-header-files --bind-services"