Along with the new cadence Oracle are announcing a major shift in how they build and release Java. Oracle intends to produce and distribute OpenJDK binaries as the primary JDK for developers going forward. This will replace the proprietary-licensed Oracle JDK as the primary release artifact distributed by Oracle.

The OpenJDK binaries will be licensed under the GPLv2 with "Classpath Exception" and will be free from the redistribution, binary patching and other restrictions that have historically encumbered the Oracle JDK license. The Oracle JDK product will still exist, but in the form of long-term support releases as part of an Oracle support contract.

Java's current release cycle is intended to be two years, but Java 9 has encountered significant delays due to the Java Platform Modules System (Jigsaw) and is now around 18 months late. Java 8 was also delayed for around eight months in order to address security issues. Java 9 is currently scheduled for general availability on September 21st.

Under the new release schedule Oracle proposes strict time-based releases, known as feature releases. These will appear every year in March and September and will have version numbers of the form 18.3, 18.9, 19.3 and so on. Unlike the current train-based model, these releases will not be delayed to accommodate a major feature. New features will not be merged to a release source control repo until they are feature complete - if they miss a release, they must be retargeted for the following release or later.

The intention of this model is to prevent problems with a keystone feature (such as Lambdas in Java 8 or Modules in Java 9) from delaying a release that contains other features that would be useful to developers.

In addition to the feature releases, Oracle will continue to ship update releases every quarter, in January, April, July, and October. This means that each feature release will receive two updates before the next feature release. The content of update releases will also be strictly limited and only permitted to contain fixes of security issues, regressions or bugs in recently-added features.

Reinhold explains the overall view as:

Developers who prefer rapid innovation, so that they can leverage new features in production as soon as possible, can use the most recent feature release or an update release thereof and move on to the next one when it ships.

For enterprises and organizations who don't necessarily want or need to upgrade at a rapid pace, Oracle is proposing to produce a long-term support (LTS) release every three years. These releases will be supported for a minimum of three years, and possibly longer, depending on market reaction.

Oracle is proposing that under the new model, the first proposed LTS release would be "18.9" and a final decision is expected after discussion with other OpenJDK contributors and assessing proposal feedback. Java 8 would also be regarded as a special LTS release and be supported until 2025.

Smith comments that:

OpenJDK binaries become the primary channel for developers to access the latest innovation in the Java SE platform, the Oracle JDK will remain as a long term support LTS offering for Oracle’s commercial and support customers.

Outside of Oracle, Martijn Verburg - leader of the London Java Community - had this comment about the proposed new schedule:

The intention from Oracle to release Java earlier and more often can only be a good thing for the Java ecosystem. Java 9 with Jigsaw and Incubation modules has laid down a great platform for this to become a reality.

Oracle does has a serious release engineering challenge on their hands, but there’s plenty of institutional knowledge there and in the wider OpenJDK community in order to make this happen.

I expect some bumps along the way but look forward to a regular cadence, with other Java implementers getting access to the draft specifications as they’re in flight so that they can also release early and often.

Oracle has frequently been subjected to criticism over the pace of new releases of Java. The platform is in the unenviable position of being used by both large enterprises and as the foundation of a large amount of open-source platforms and languages that are used to a faster release cycle. Today's announcement is clearly an attempt to square that circle of expectations. It remains to be seen how Java developers and Oracle's customers will respond to the proposed changes.

I'm curious - what aspect of what I wrote did you think was critical of Oracle?

I hoped that what I'd written was fairly objective - it's a simple fact that Java 9 is 18 months late, and I think they've done very well to balance competing priorities (faster release cycle vs enterprise stability).

Is your profile up-to-date? Please take a moment to review and update.

Email Address

Note: If updating/changing your email, a validation request will be sent

Company name:

Keep current company name

Update Company name to:

Company role:

Keep current company role

Update company role to:

Company size:

Keep current company Size

Update company size to:

Country/Zone:

Keep current country/zone

Update country/zone to:

State/Province/Region:

Keep current state/province/region

Update state/province/region to:

Subscribe to our newsletter?

Subscribe to our architect newsletter?

Subscribe to our industry email notices?

You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.

We notice you're using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.