2019-03-21

OpenJDK vs AdoptOpenJDK


Updates@2019-Apr-01_pm040305:

I'm using OpenJDK8U-jdk_x64_linux_hotspot_8u202b08
https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u202-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u202b08.tar.gz

from: https://adoptopenjdk.net/releases.html?variant=openjdk8&jvmVariant=hotspot#x64_linux



Seems previous finding

https://billson.blogspot.com/2019/03/openjdk-variants-vs-each-other-and-vs.html


  1. OracleJDK
  2. OpenJDK
    1. from Oracle
    2. from other providers




jdk_ri-8u40-b25-windows-i586-10_feb_2015>bin\java.exe -version
openjdk version "1.8.0_40"
OpenJDK Runtime Environment (build 1.8.0_40-b25)
OpenJDK Client VM (build 25.40-b25, mixed mode)

OpenJDK8U-jre_x86-32_windows_hotspot_8u202b08\bin\java.exe -version
openjdk version "1.8.0_202"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_202-b08)
OpenJDK Server VM (AdoptOpenJDK)(build 25.202-b08, mixed mode)




Reference from stackoverflow
Difference between OpenJDK and AdoptOpenJDK
https://stackoverflow.com/questions/52431764/difference-between-openjdk-and-adoptopenjdk


In short:
  • OpenJDK has multiple meanings and can be referred as:
    • free and open source implementation of the Java Platform, Standard Edition (Java SE)
    • open source repository - the Java source code aka OpenJDK project
    • prebuilt OpenJDK binaries provided by Oracle
  • AdoptOpenJDK prebuilt OpenJDK binaries provided by community



    Explanation:
    Prebuilt OpenJDK (or distribution) - binaries, built from http://hg.openjdk.java.net/, provided in a zip or installer, offered for various platforms, with a possible support contract.
    OpenJDK, the source repository (also called OpenJDK project) - is a Mercurial-based open source repository, hosted at [http://hg.openjdk.java.net]. The Java source code. The vast majority of Java features (from the VM and the core libraries to the compiler) are based solely on this source repository. Oracle have an alternate fork of this.
    OpenJDK, the distribution (see the list of providers below) - is free as in beer and kind of free as in speech, but, you do not get to call Oracle if you have problems with it. There is no support contract. Furthermore, Oracle will only release updates to any OpenJDK (the distribution) version if that release is the most recent Java release (including LTS). The day oracle releases OpenJDK (the distribution) version 12.0, even if there's a security issue with OpenJDK (the distribution) version 11.0, Oracle shall not release an update for 11.0. Maintained solely by Oracle.
    AdoptOpenJDK, the distribution - very similar to Oracle's OpenJDK distribution (in that it is free, and it is a build produced by compiling the sources from the OpenJDK source repository). AdoptOpenJDK as an entity will not be backporting patches, i.e. there won't be an AdoptOpenJDK 'fork/version' that is materially different from upstream (except for some build script patches for things like Win32 support). Meaning, if members of the community (Oracle or others, but not AdoptOpenJDK as an entity) backport security fixes to updates of OpenJDK LTS versions, then AdoptOpenJDK will provide builds for those. Maintained by OpenJDK community.
    There's also OracleJDK - another distribution, starting with JDK12 there will be no free version of this. Oracle's JDK distribution offering intended for commercial support. You pay for this, but then you do get to rely on Oracle for support. Unlike Oracle's OpenJDK offering, the OracleJDK offering does come with longer support for LTS versions. As a developer you can get a free license for personal/development use only of this particular JDK, but that's mostly a red herring, as 'just the binary' is basically the same as the OpenJDK binary. I guess it means you can download security-patched versions of LTS JDKs from Oracle's websites as long as you promise not to use them commercially.
    Note. It maybe best to call the OpenJDK builds by Oracle, the "Oracle OpenJDK builds".
    Donald Smith, Java product manager at Oracle writes:
    Ideally, we would simply refer to all Oracle JDK builds as the "Oracle JDK," either under the GPL or the commercial license depending on your situation. However, for historical reasons while the small remaining differences exist, we will refer to them separately as Oracle’s OpenJDK builds, and the Oracle JDK.

    OpenJDK Providers and Comparison

    ---------------------------------------------------------------------------
    |     Provider      | Free Builds | Free Binary   | Extended | Commercial |
    |                   | from Source | Distributions | Updates* | Support    |  
    |-------------------------------------------------------------------------|               
    | AdoptOpenJDK      |    Yes      |    Yes        |   Yes    |   No       |
    | Azul              |    No       |    Yes        |   Yes    |   Yes      |
    | IBM               |    No       |    No         |   Yes    |   Yes      |
    | Mercurial         |    Yes      |    Yes        |   No     |   No       |
    | Oracle            |    No       |    Yes        |   No**   |   Yes      |
    | RedHat            |    Yes      |    Yes        |   Yes    |   Yes      |
    | SapMachine        |    Yes      |    Yes        |   Yes    |   Yes      |
    | Amazon – Corretto |    Yes      |    Yes        |   Yes    |   No       |
    ---------------------------------------------------------------------------
    
    * Extended Updates - Public Updates beyond the 6-month release lifecycle
    ** Oracle provides extended updates (and support) to paying customers, i.e. Oracle JDK only

    Additional information
    Time to look beyond Oracle's JDK by Stephen Colebourne
    Java Is Still Free by Java Champions community (published on September 17, 2018)
    Java is Still Free 2.0.0 by Java Champions community (published on March 3, 2019)






No comments:

Post a Comment