Migrating from Java 8 to Java 11
Support for OpenJDK 11 was added in Eclipse OpenJ9™ version 0.10.0.
The following new OpenJ9 features and notable changes apply when OpenJ9 is built with Java SE 11 class libraries. This information exists elsewhere in the documentation but is summarized here for convenience.
Support for JDK enhancement proposals (JEP)
The new JEPs that are supported are listed in the following topics:
- JDK 9: What's new in version 0.9.0
- JDK 10: What's new in version 0.9.0
- JDK 11: What's new in version 0.10.0
New OpenJ9 features and changes
The following table lists the new OpenJ9 features and notable changes with the OpenJ9 release in which they were added:
|Features and changes
|The path that is specified by the default
-Xoptionsfile value is the
<java_home>/lib directory, where
<java_home> is the directory for your runtime environment. For Java 8, the path is the VM directory that is listed in Directory conventions.
|Low-overhead heap profiling is supported. JEP 331 provides a mechanism for sampling Java heap allocations with a low overhead via the JVM Tool Interface (JVMTI).
Restrictions: JEP 331 is implemented for OpenJ9 with the following limitations:
|OpenSSL support for the ChaCha20 and ChaCha20-Poly1305 algorithms is available. The version of OpenSSL must be version 1.1.x or later. For more information, see
-verbose:module option, which writes information to stderr for each module that is loaded and unloaded, is now supported.
|The default value of the
-XX:MaxDirectMemorySize option, which limits the amount of heap memory that is used for direct byte buffers, is the same as the maximum heap size. For JDK 8, the VM default value is 87.5% of the maximum heap size.
|OpenSSL support is added for the following algorithms: