Skip to content

What's new in version 0.37.0

The following new features and notable changes since version 0.36.x are included in this release:

Features and changes

Binaries and supported environments

Eclipse OpenJ9™ release 0.37.0 works with OpenJDK 19. OpenJDK 19 is out of support at the time of the 0.37.0 release. Builds of 0.37.0 should not be used in production and might contain known security vulnerabilities as of 18 April 2023.

RHEL 8.2 is out of support. RHEL 8.4 is the new minimum operating system level.

OpenJ9 Windows® builds for OpenJDK 19 and later are now compiled with Microsoft® Visual Studio 2022. The Visual Studio redistributable files included with the build are updated to match.

To learn more about support for OpenJ9 releases, including OpenJDK levels and platform support, see Supported environments.

AIX is now built on AIX 7.2 TL5

All AIX compiles are now moved from AIX 7.1 TL5 to AIX 7.2 TL5.

For more information, see Supported environments.

Start of content that applies to Java 19 plus Linux reference compiler updated to gcc 11.2

Linux builds for platforms Linux x86 64-bit, Linux on POWER LE 64-bit, and Linux on IBM Z 64-bit now use gcc 11.2 instead of gcc 10.3. Linux AArch64 64-bit continues to use the gcc 10.3 compiler. See the list of build environments.

Support added for the com.sun.management.ThreadMXBean interface

The OpenJ9 ThreadMXbean interface (com.ibm.lang.management.ThreadMXBean) was extending the java.lang.management.ThreadMXBean interface. With this release, the OpenJ9 ThreadMXBean interface extends the com.sun.management.ThreadMXBean interface, whereby it now contains all the methods of the java.lang.management.ThreadMXBean interface with additional methods from the com.sun.management.ThreadMXBean interface.

The OpenJ9 VM implementation does not support thread memory allocation measurement (isThreadAllocatedMemorySupported method returns false).

Start of content that applies to Java 11 (LTS) and later Support for PKCS#11 token labels added on Linux on IBM Z

On restarting an application, or creating or removing of tokens, the token might move to a different slot. An application that uses the slot or slotListIndex attributes might fail if it doesn’t first check which slot the token is in.

OpenJ9 now supports the use of an extra attribute, tokenlabel, in the SunPKCS11 configuration file on Linux on IBM Z, which helps to avoid this issue.

For more information, see Support for PKCS#11 token labels.

New message added to help find system dumps on Linux

A new message, JVMPORT049I, is added to help find the system dump files for kernel.core_pattern piped programs on Linux.

For more information about system dumps and piped system dumps, see System dumps on Linux.

Start of content that applies to Java 19 plus New JDK 19 features

The following features are supported by OpenJ9:

  • JEP 424: Foreign Function & Memory API (Preview)
  • JEP 425: Virtual Threads (Preview)
  • JEP 426: Vector API (Fourth Incubator)

The following features are implemented in OpenJDK and available in any build of OpenJDK 19 with OpenJ9:

  • JEP 405: Record Patterns (Preview)
  • JEP 427: Pattern Matching for switch (Third Preview)

You can find the full list of features for JDK 19 at the OpenJDK project. Any remaining features that are listed are not implemented and hence not applicable to OpenJ9 in this release.

Known problems and full release information

To see known problems and a complete list of changes between Eclipse OpenJ9 v0.36.x and v0.37.0 releases, see the Release notes.