Chapter 3. OpenJDK features

The latest OpenJDK 8 release might include new features. Additionally, this release might enhance, deprecate, or remove features that originated from previous OpenJDK 8 releases.

Note

For all the other changes and security fixes, see OpenJDK 8u332 Released.

3.1. New features and enhancements

Review the following release notes to understand new features and feature enhancements that have been included with the OpenJDK 8.0.332 release:

Portable Linux build access to cacerts

Portable Linux builds of Red Hat OpenJDK 8.0.322 attempted to use /etc/pki/java/cacerts as its security certificate database. This was an undesired change in behavior from the OpenJDK 8.0.312 release, where a portable Linux build would use the cacerts database located in its own directory structure.

OpenJDK 8.0.332 fixes this issue by changing the cacerts file location to <java_home>/jre/lib/java.security, which was the default location specified in the OpenJDK 8.0.312 release.

Additionally with the OpenJDK 8.0.332 release, you can configure the cacerts database in the java.security file by using the property security.systemCACerts. You can disable this functionality by passing the -Djava.security.disableSystemCACerts=true argument when you start your JVM.

Alternative Data Streams (ADS) behavior on OpenJDK for Microsoft Windows

The OpenJDK 8 for Microsoft Windows release fixes an issue where some Java applications failed because java.io.FileOutputStream would not open some files containing a colon (:) character. This issue occurred because the default value for jdk.io.File.enableADS was set to false.

This OpenJDK 8 for Microsoft Windows release sets the default value for the jdk.io.File.enableADS to true. By default, OpenJDK can now write to Alternative Data Streams and to special files in Microsoft Windows, such as the NUL: file.

You can disable OpenJDK’s capability to write to ADS by choosing one of the following options:

  • Pass the -Djdk.io.File.enableADS=false parameter to your OpenJDK deployment.
  • Set the JAVA_TOOL_OPTIONS environment variable to JAVA_TOOL_OPTIONS=-Djdk.io.File.enableADS=false.
Important

Implementing one of these settings might cause issues with how your Java applications write data into files for your OpenJDK 8 for Microsoft Windows build.

See JDK-8285445 (JDK Bug System)