A Tale of Two Oracle JDKs
There has been concern recently that Java developers will inadvertently use the wrong Oracle-provided JDK implementation now (as of JDK 11) that Oracle provides builds of the open source OpenJDK and also provides commercial JDK builds based largely on the OpenJDK source.
The table below compares and contrasts the two versions of JDK that Oracle provides (but Oracle won’t be the only supplier of JDK builds available for free and/or for support charge). Please keep in mind this represents my best personal understanding of the differences and similarities of Oracle’s two offerings; please check with an authoritative source before making decisions regarding which Oracle JDK implementation to use (or even whether to use an Oracle implementation).
JDK Builds from Oracle (https://jdk.java.net/) | ||
---|---|---|
Characteristic | Oracle OpenJDK Builds | Oracle JDK (Java SE Downloads) |
Oracle’s Descriptions | “End users and developers looking for free JDK versions: Oracle OpenJDK offers the same features and performance as Oracle JDK under the GPL license.” | “Oracle Customers and ISVs targeting Oracle LTS releases: Oracle JDK is Oracle’s supported Java SE version for customers and for developing, testing, prototyping or demonstrating your Java applications.” |
Web Address | https://jdk.java.net/11/ | https://www.oracle.com/technetwork/java/javase/downloads/jdk11-downloads-5066655.html |
License | GNU General Public License, version 2, with the Classpath Exception | Oracle Technology Network License Agreement for Oracle Java SE |
Build Platforms (Binaries) | Linux / x64 (tar.gz )macOS / x64 ( tar.gz )Windows / x64 ( zip ) | Linux / x64 (tar.gz , deb , rpm )macOS / x64 ( tar.gz , dmg )Windows / x64 ( zip , exe )Solaris SPARC ( tar.gz ) |
Pay for Production Use | No | Yes |
Oracle Support | Select bug fixes and security patches until next JDK version’s General Availability release | Java SE Subscription (Support for LTS versions for up to 8 years) |
Several Other Paid Support Offerings under “Oracle Customers“ | ||
java -version Example | openjdk version "11" 2018-09-25 | java version "11" 2018-09-25 |
Required to Accept License Agreement | No | Yes |
Java Flight Recorder | Yes | Yes |
Java Mission Control | Yes | Yes |
Advanced Management Console | No | Yes |
This table represents my personal understanding only; refer to Oracle documentation and OpenJDK documentation for more authoritative information (see “References” below). |
There are other implementations of the JDK that will be available as well, with some being free and some requiring payment. I did not discuss those alternatively provided JDKs in this post in order to keep the comparison cleaner and simpler between the “Oracle OpenJDK builds” and the “Oracle JDK builds”.
References
- Oracle Java SE Support Roadmap
- Oracle JDK Releases for Java 11 and Later
- Java SE Offerings
- Update and FAQ on the Java SE Release Cadence
- OpenJDK Trademark Notice (Oracle owns the trademark)
Published on Java Code Geeks with permission by Dustin Marx, partner at our JCG program. See the original article here: A Tale of Two Oracle JDKs Opinions expressed by Java Code Geeks contributors are their own. |