Oracle on Wednesday is proposing some changes to the ways Java Platform, Standard Edition (Java SE) is produced and distributed, designed to make life easier for developers. The software giant is also proposing a new release model for the popular development and application platform.
"Developers expect more frequent release cycles and flexible licensing," Donald Smith, senior director of product management for Java (SE), wrote in a blog post. He noted that the build, release, licensing, and distribution model for Java SE is well over a decade old.
To support cloud-driven developer needs, Oracle plans to ship OpenJDK binaries under the GNU General Public License (GPL), a widely used free software license. This will start with JDK (Java SE Development Kit) 9. These OpenJDK builds will be produced and distributed on platforms popular with developers, such as Linux, macOS, and Windows on the x64 architecture.
Oracle is also proposing to eventually open source commercial features now only available in the Oracle JDK, such as Java Flight Recorder.
"While we know there will initially be differences, our intent is that within a few releases there should be no technical differences between OpenJDK builds and Oracle JDK binaries," Smith wrote. "To achieve this, Oracle will work with other OpenJDK contributors on an open build-and-test infrastructure with the potential to support additional ports."
As more developers turn to OpenJDK binaries, Oracle plans to maintain the Oracle JDK as a long term support (LTS) offering for commercial and support customers.
In addition to these changes, Mark Reinhold, chief architect of the Java Platform Group at Oracle, is proposing a new release model for the Java SE Platform and the JDK that's time-based rather than feature-driven. Specifically, he's proposing a new release every six months, with update releases every quarter and a long-term release every three years.
Java 9 will ship this month, three and a half years after Java 8. "For Java to remain competitive it must not just continue to move forward--it must move forward faster," Reinhold wrote in a blog post.
A six-month cycle, he wrote is "fast enough to minimize the pain of waiting for the next [release] yet slow enough that we can still deliver each release at a high level of quality, preserving Java's key long-term values of compatibility, reliability, and thoughtful evolution."
Feature releases will ship in March and September of each year, starting in March of 2018, he said. Update releases will be limited to security issues, regressions, and bugs in newer features. The long-term release, meanwhile, should be attractive to enterprises looking for stability.