OpenJ9 Logo

What's new in the OpenJ9 project

Find out what's happening at the project. Read about the highlights of our latest release. Catch the latest blog posts from our blog site; get top tips or deep dives about key features of OpenJ9 or simply read about experiences of working in the community.

Latest release

Eclipse OpenJ9 version 0.23.0 released

23 October 2020

OpenJ9 version 0.23.0 supports OpenJDK version 8, 11, and 15. OpenJDK builds that contain version 0.23.0 are now available from the AdoptOpenJDK community project:

This release of OpenJ9 sees several performance enhancements:

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

In this release, we've improved the effectiveness of the option -XX:[+|-]PortableSharedCache by also making the AOT compiled code to be more portable across different heap sizes in compressed references mode on the X86 platform.

The option -XX:[+|-]IdleTuningCompactOnIdle that triggered a compaction of the Java heap during the idle state of the JVM is now deprecated. A new mechanism, which is independent of the option, has been implemented. This mechanism measures fragmentation and triggers heap compaction as needed.

The JITServer technology preview has been extended to Linux® on IBM Power® systems and Linux on IBM Z® systems (64-bit only).

For compatibility, the -XX:[+|-]AlwaysPreTouch OpenJDK HotSpot option is now supported by OpenJ9.

For all the details of changes and improvements in 0.23.0, read the Version 0.23.0 "What's New" page and see also the OpenJ9 Release notes.

New release info

Recent blogs

Setting up an OpenJ9 Development Environment with Visual Studio Code + Docker + CMake

19 November 2020

Setting up a proficient development environment on a large project such as OpenJ9 with so many pieces in play can be a daunting task. Often times, setting up such a development environment and being able to navigate the codebase with familiar tools and with the full power of an IDE is worth the effort in terms of productivity. This blog post will guide you through setting up a development environment with a one-click build trigger, full Intellisense support, and full debugging support using Visual Studio Code, Docker, DevContainers extensions, and CMake.

Arraylets: What are They?

02 June 2020

Garbage Collectors (GCs) are responsible for allocating and deallocating objects making sure the running application run as smoothly as possible. There are many types of GC configurations out there, mark sweep, generational, region based, concurrent, parallel, reference counting [1] and a combination of these. The way we represent objects in each of these configurations, also…

See all blogs
Eclipse Incubator Logo
OpenJ9 is an Eclipse Incubator Project
OpenJ9 is an Eclipse Incubator Project
Eclipse Incubator Logo