The Eclipse OpenJ9 project has completed the 0.9.0 release. This release marks a major milestone bringing on new platforms, like Windows 32 & 64 and AIX; features such as “nogc” policy and SharedClasses, supported for Spring’s nested jars; as well as increased serviceability through DDR. See Shelley Lambert’s excellent OpenJ9 blog post for more details.
Why does this release justify the “welcome to the future” tagline? With this release, OpenJ9 showcases the value to build a single JVM code stream into multiple JDK releases. One OpenJ9 release brings new improvements to all of Java 8, 9, and 10!
This fundamentally new approach in the way JVMs are developed brings major benefits to users: you get access to new features, performance updates, and regular improvements regardless of the Java version you’re using. Need to stay on Java 8 for a long time and don’t want to get left behind as the platform solves problems like container support? Still want the benefits of continued performance tuning? OpenJ9 is the only answer here.
Take a new feature like the “nogc” policy, for example. OpenJ9 0.9.0 makes the “nogc” policy available from JDK8 on; whereas, other JVMs make you upgrade to JDK11 to get access to this new feature. The same is true for improvements to the JVM running in containers. New features, performance enhancements, and general improvements that aren’t bound to a particular Java release simultaneously become available in all releases!
So what about that “0.9.0” version. Should you wait for 1.0? Certainly not! OpenJ9 cannot yet do a 1.0 release because our project has not yet graduated as a mature open source project at the Eclipse Foundation. That’s it. We can only graduate by attracting a wide range of users and contributors to the project, and we would love for everyone to get involved!
But can you trust OpenJ9 0.9.0 with your production workloads? Well, IBM certainly does. In fact, for the last year since IBM SDK for Java 8 SR5 was released, IBM has been shipping every month the Eclipse OpenJ9 JVM as their production JVM. The only differences now between the IBM SDK for Java 8 and OpenJDK8 with OpenJ9 are in legacy patches to the class library code, not the JVM. And if you’re serious about running the fully open source OpenJ9 JVM in production but your business needs the comfort of commercial support, IBM has an attractive runtime support offering that can give you exactly what you need.
If you want to learn more about OpenJ9 or connect with the development community, join OpenJ9 on Slack, bring your questions to the regular OpenJ9 Community hangouts, or connect with the very active GitHub project.