Differences between Oracle JDK and OpenJDK

后端 未结 11 1258
囚心锁ツ
囚心锁ツ 2020-11-22 12:01

NOTE: This question is from 2014. As of Java 11 OpenJDK and Oracle JDK are converging.

Are there any crucial differences between Ora

11条回答
  •  忘了有多久
    2020-11-22 12:15

    1. Oracle will deliver releases every three years, while OpenJDK will be released every six months.
    2. Oracle provides long term support for its releases. On the other hand, OpenJDK supports the changes to a release only until the next version is released.
    3. Oracle JDK was licensed under Oracle Binary Code License Agreement, whereas OpenJDK has the GNU General Public License (GNU GPL) version 2 with a linking exception.
    4. Oracle product has Flight Recorder, Java Mission Control, and Application Class-Data Sharing features, while OpenJDK has the Font Renderer feature.Also, Oracle has more Garbage Collection options and better renderers,
    5. Oracle JDK is fully developed by Oracle Corporation whereas the OpenJDK is developed by Oracle, OpenJDK, and the Java Community. However, the top-notch companies like Red Hat, Azul Systems, IBM, Apple Inc., SAP AG also take an active part in its development.

    From Java 11 turn to a big change

    Oracle will change its historical “BCL” license with a combination of an open source and commercial license

    • Oracle’s kit for Java 11 emits a warning when using the -XX:+UnlockCommercialFeatures option, whereas in OpenJDK builds, this option results in an error
    • Oracle JDK offers a configuration to provide usage log data to the “Advanced Management Console” tool
    • Oracle has always required third party cryptographic providers to be signed by a known certificate, while cryptography framework in OpenJDK has an open cryptographic interface, which means there is no restriction as to which providers can be used
    • Oracle JDK 11 will continue to include installers, branding, and JRE packaging, whereas OpenJDK builds are currently available as zip and tar.gz files
    • The javac –release command behaves differently for the Java 9 and Java 10 targets due to the presence of some additional modules in Oracle’s release
    • The output of the java –version and java -fullversion commands will distinguish Oracle’s builds from OpenJDK builds


    Update : 25-Aug-2019



    for more details oracle-vs-openjdk

提交回复
热议问题