What exactly is the difference between the two versions described below?
From http://jdk.java.net/10/
This page provides production-ready open-source builds of the Java Development Kit, version 10.0.1, an implementation of the Java SE 10 Platform under the GNU General Public License, version 2, with the Classpath Exception.
From http://jdk.java.net/java-se-ri/10
The official Reference Implementation for Java SE 10 (JSR 383) is based solely upon open-source code available from the JDK 10 Project in the OpenJDK Community.
OpenJDK is a free and open-source implementation of the Java SE Platform Edition. It was initially released in 2007 as the result of the development that Sun Microsystems started in 2006. We should emphasize that OpenJDK is an official reference implementation of a Java Standard Edition since version SE 7.
OpenJDK (Open Java Development Kit) is a free and open-source implementation of the Java Platform, Standard Edition (Java SE). It is the result of an effort Sun Microsystems began in 2006. The implementation is licensed under the GPL-2.0-only with a linking exception.
The Java Development Kit (JDK) is part of the Java SE Product, there are other parts as well, but you can treat them as the same thing for development purposes.
JRE is the Java Runtime Environment – it contains a JVM, among other things, and is what you need to run a Java program. JDK is the Java Development Kit – it is the JRE, but with javac (which is what you need to compile Java source code) and other programming tools added. OpenJDK is a specific JDK implementation.
The Reference Implementation is a 'prototype or "proof of concept" implementation of a Specification', in this case the Java SE 10 Platform JSR. As such, it doesn't get any further updates, unless the specification itself needs to be updated. Its target audience are specification writers, and implementation developers, rather than actual users.
The GA release, on the other hand, receives at least two updates for critical issues, e.g. time zone fixes, P1 bug fixes, security issues, etc. - it's suitable for development and production use.
The General-Availability Release is designed for actual use by programmers and developers, and receives security updates. The Reference Implementation is for JVM developers who want a reference JVM that is conforming to the specification that they can compare their work to.
In any case you want to use the GAR builds.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With