The cloud has changed how modern applications are being developed, deployed and consumed. On the client side, ready-to-run mobile-first native applications and HTML5/JS web interfaces are increasingly prevalent. On the cloud side, “applications” are transitioning to container-based, modular microservices and even functions. Developers expect more frequent release cycles and flexible licensing.
Java continues to be one of the most popular development and application platforms in the world. The build, release, licensing and distribution model for Java SE is well over a decade old, and will be refreshed to support the changing needs driven by the cloud for the future.
To this end we are proposing a number of changes to how Java SE is produced and distributed.
Introducing OpenJDK builds under the GPL from Oracle
Oracle plans to ship OpenJDK builds to make it easier for developers to deploy Java applications to cloud environments. We will initially offer Linux x64 binaries and add macOS and Windows later. These will be licensed under the GPLv2 with the “Classpath Exception”, allowing developers to easily and freely distribute them with their frameworks and applications.
Oracle will also open source commercial features such as Java Flight Recorder previously only available in the Oracle JDK. We plan to open source a number of additional internal development projects after proposing and discussing with OpenJDK contributors.
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. To achieve this, Oracle will work with other OpenJDK contributors on an open build-and-test infrastructure with the potential to support additional ports.
Ongoing Oracle JDK Support
Oracle will continue to build and ship the Oracle JDK. Oracle JDK 8 will continue to receive public updates for at least the next year, and commercial support will be available through 2025. As 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.
As client application development continues to shift from the old “plugin” world to modern deployment, the need for a standalone Java Runtime Environment (JRE) that is installed centrally, separately from Java applications has diminished. Using the ‘jlink’ tool introduced with JDK 9 will make it even easier for application developers to package and deploy dedicated runtimes rather than relying on a pre-installed system JRE. Oracle will begin transitioning from the standalone architecture later next year in what will be a multi-year effort.