The history and future of OpenJDK

In the second half of 2017, a number of major changes were announced in the Java ecosystem that have the potential to force a reassessment of Java roadmaps and vendor selection for enterprise Java users. Some of the changes are happening in the upstream OpenJDK (Open Java Development Kit) community, and some of the changes are happening in proprietary commercial distributions of Java. Red Hat anticipates that many of our customers will need to review their current Java plans and we want to take this opportunity to review the history of our relationship with the OpenJDK community, discuss the changes in the Java ecosystem, and describe Red Hat’s Java offerings. Subsequent posts will cover the ecosystem changes and Red Hat’s plans going forward.

OpenJDK started as a free and open source implementation of the Java Platform, Standard Edition, as a result of a 2006 initiative by Sun Microsystems. At JavaOne 2006, Sun announced that Java and the core Java Platform would be open sourced.. Over the next few years, the major components of the Java Platform were released as free and open source software using the GPL.

Red Hat’s history with OpenJDK

Red Hat announced an agreement with Sun Microsystems, signing on to a broad contributor agreement, on Nov. 5, 2007. This agreement covered the participation of Red Hat engineers in all Sun-led open source projects. As part of this, Red Hat signed Sun’s OpenJDK Community TCK License Agreement, becoming the first major software vendor to do so.

As part of the announcement, Red Hat also committed to sharing its developers’ contributions with Sun to further create the OpenJDK community and foster innovation. Red Hat’s Andrew Haley currently holds a seat on the OpenJDK Governing Board, and Red Hat is one of the largest contributors after Oracle.

By doing this, Red Hat was deepening its participation in the Java ecosystem, which was significant after its acquisition of JBoss in the previous year.

In 2009, Sun was acquired by Oracle and the relationship that had developed between Sun and Red Hat was continued under Oracle.

Red Hat also started, wrote much of, and leads the 64-bit ARMv8 port, AArch64 for OpenJDK, and helped move it into the upstream OpenJDK project. Currently, we’re working with the OpenJDK community on a new ultra-low pausetime Garbage Collector named Shenandoah that’s outside the OpenJDK mainline now - but fully supported in Red Hat Enterprise Linux 7. The work is targeted to enter mainline in OpenJDK 12.

OpenJDK 6 was packaged and supported in Red Hat Enterprise Linux 5, 6, and 7, as was OpenJDK 7. OpenJDK 8 is supported in Red Hat Enterprise Linux 6 and 7. In addition to providing support across a range of Red Hat Enterprise Linux versions, we have consistently provided lifecycle support for our OpenJDK distributions.

The lifecycle for OpenJDK 7 has recently been extended to June 2020, and the lifecycle for OpenJDK 8 has been extended to June 2023 with the intent of providing users with sufficient time to migrate workloads to OpenJDK 11. Red Hat plans production support of OpenJDK 11 in the upcoming Red Hat Enterprise Linux 7.6 update.

In addition to distributing and providing lifecycle support for OpenJDK on Red Hat Enterprise Linux, Red Hat’s open source Java middleware products support OpenJDK for Red Hat Enterprise Linux, enabling users to get a full stack support from the operating system through to application services from a single vendor, and other Red Hat products internally run on OpenJDK. We are a leader in offering support to customers worldwide that rely on open source to run their production workloads.

Keep an eye on this blog for subsequent posts covering the changes in the Java ecosystem and how Red Hat offerings are adapting to better serve your needs. The next blog post in this series will cover some of the dramatic changes that Oracle has made regarding their commercial distribution of Java.