The Convergence of OpenJDK and the Oracle JDK

In 2018, Oracle changed the license of their JDK. Instead of a single JDK build available both for commercial and free users, they offered two different JDK builds:
            • Oracle JDK (commercial), which can be used in development and testing for free, but you have pay to use it in production.
            • Oracle Open JDK (open source), which can be used in any environment for free.

JDK Builds

  • There is only one set of source code for the JDK. It is hosted in Mercurial at OpenJDK.
  • Anyone can take the source code, produce a build, and post it. So, Oracle created a certification process that should be used to ensure the build is valid.
  • This certification is run by the Java Community Process, which provides a Technology Compatibility Kit (TCK or JCK as Java). If an organization produces an OpenJDK build that passes the TCK then that build can be described as "Java SE compatible".
  • The most popular and famous builds are distributed by Red Hat, Azul and community-led Adopt OpenJDK.



Oracle Commercial JDK

  • If you want to use Oracle JDK in production environment you have to pay for a license.
  • You can still use Oracle JDK for free in development and testing environments.
  • LTS Options: If you are using Oracle Java 9 or 10 you should change your JDK vendor, because Oracle will no longer support these versions even on a commercial basis.



RedHat Open JDK

  • Red Hat OpenJDK 8 (Open Java Development Kit) is a free and open source implementation of the Java Platform, Standard Edition (Java SE).
  • The RedHat OpenJDK build is free to use within a Red Hat Enterprise Linux (RHEL) which is paid for licences.
  • Red Hat was acquired by IBM in 2018 what provided them with a greater level of scale, resources, and capabilities.
  • LTS options: Major LTS OpenJDK versions (7, 8,  and 11) on RHEL are fully supported by Red Hat and Red Hat is committed to providing code-level patches for bug fixes. Major versions are supported for at least 6 years. For instance, OpenJDK 1.8 is supported until June 2023.



Oracle OpenJDK

  • Vanilla version JDK which is supported by Oracle engineers and the community. They usually get the newest features first.
  • Oracle OpenJDK is free to use in all environments including production.
  • LTS options: No LTS, there is a 6-month support cycle for each version, then you have to update JDK if you want to use a supported version of Java. It can cause security risks due to constant updates and unstable GDK.


References

Yorumlar

Popular

Java 14 New Features

Pretenders, Contenders and Liars

Java 12 New Features