With the new release cadence of a major release of Java every 6 months, which was introduced a year ago with Java 9, a lot of uncertainty about an update strategy arose.
Due to the introduction of the modules at the JVM level with that same Java 9, a lot of developers decided to stay at Java 8 because not all development tools were ready for this change (and they could not benefit from these modules yet anyway).
But now we are at a point we need to make a decision about what and how we would like to proceed.
Java 8 End of Support
In January 2019, Oracle will stop the public updates for Java 8. This means that from that date on, there will be no new JDK 8 downloads made available anymore.
Normally there are new versions created on a regular basis containing minor fixes and security updates to maintain the security of your systems. After January of 2019, only customers who have signed a support contract with Oracle will still receive security updates for Oracle JDK 8. If you want to remain on JDK 8, you'll either need to buy a support contract from Oracle or use OpenJDK 8 as a Payara Enterprise customer.
A Payara Enterprise support contract includes access to fully supported builds of Zulu Enterprise Open JDK 8 with commercial support until 2024.
Can I Still Use Java 8?
The fact that there are no longer updates made available doesn’t make the JDK 8 installation unusable. It will still run as it did before with no limitations. However, new issues detected after January will not be taken into account. If you are running a business critical application, you will not want to risk the security concerns of using an unsupported version of JDK.
What About OpenJDK?
OpenJDK started with JDK 7 about 10 years ago.
In the beginning, not all features which were available in Oracle JDK were included in OpenJDK. But gradually, over the years, the versions became more aligned. Also, the OpenJDK community became larger and gained popularity and many more vendors joined and contributed, including Oracle.
Since OpenJDK 9, the OpenJDK code base is used for almost all JVM versions as the basis. Vendors add some additional stuff to it or replace some functionality with some proprietary implementation. But still, with all those changes, they all need to pass the TCK (and thus are compatible with the specification).
Support for OpenJDK is Available
Using OpenJDK 8 after January 2019 is an option when you still want or need to use Java 8. The functionality is almost identical to Oracle JDK 8 so switching to it should be relatively painless!
Since Oracle will no longer produce public updates for their JDK, they are also no longer actively working on OpenJDK 8. Just as with the Java 6 and 7 versions of OpenJDK, Red Hat will probably take the lead and maintain the codebase in cooperation with other vendors like IBM, Amazon, and Azul.
Maintenance for OpenJDK 8 is planned for at least another 4 years, until September 2023. Through Payara's partnership with Azul, Payara Enterprise support customers receive access to Enterprise builds of the Zulu JDK for versions 7, 8, and 11+ for use in development, testing, and production environments. Payara Enterprise customers also receive security updates for JDK 7 through 2022 and through 2024 for JDK 8. If you're using an older version of JDK, you can request backported bug and security fixes implemented in new releases to allow for a secure delayed migration schedule.
Payara Enterprise Includes OpenJDK Support
While there will be no more new versions released for Oracle JDK 8 after January of 2019, you can still continue using a fully supported version of JDK 8 by switching to OpenJDK and obtaining a Payara Enterprise contract.
Learn more about Payara Enterprise