Last updated on December 17, 2021
What now with Kotlin and JVM:
“Oracle has announced that, effective January 2019, Java SE 8 public updates will no longer be available for “Business, Commercial or Production use” without a commercial license.”
“We are happy to announce the first Technology Preview of Kotlin/Native that compiles Kotlin directly to machine code. The Kotlin/Native compiler produces standalone executables that can run without any virtual machine.”
Kotlin/Native uses the LLVM compiler infrastructure to generate machine code
OpenJDK (Open Java Development Kit) is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).
Oracle’s plans for OpenJDK
What are Oracle’s plans for the OpenJDK Community?
“Oracle plans to continue to work on the next release of the Java SE platform with the Java community as part of the OpenJDK project. OpenJDK is the only open-source Java SE implementation to which Oracle plans to contribute.”
Is Oracle committed to OpenJDK?
“Yes. Oracle remains committed to OpenJDK as the best open-source Java implementation and we will continue to improve OpenJDK and welcome external contributors.”
A key difference going forward is the release schedule and support policy.
OpenJDK will have a feature release every 6 months which is only supported until the next feature release. It’s essentially a continuous stream of releases targeted to developers.
The Oracle JDK is targeted more towards an enterprise audience which values stability. It’s based on one of the OpenJDK releases but is then given long term support (LTS). The Oracle JDK has releases planned every 3 years.
OpenJDK is an open source implementation of the Java Standard Edition platform with contribution from Oracle and open Java community.
OpenJDK is the official reference implementation for Java Standard Edition from Java SE 7.
OpenJDK is released under license GPL v2 wherein Oracle JDK is licensed under Oracle Binary Code License Agreement.
Actually, Oracle JDK’s build process builds from OpenJDK source code. So there is no major technical difference between Oracle JDK and OpenJDK.
Apart from the base code, Oracle JDK includes, Oracle’s implementation of Java Plugin and Java WebStart. Also includes third party closed source and open source components like graphics rasterizer and Rhino respectively.