Differences between Oracle JDK and OpenJDK

后端 未结 11 1249
囚心锁ツ
囚心锁ツ 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:05

    The Oracle and OpenJDK JVMs are the same and have the same GC features (as of the latest versions 10+). Prior to Oracle managing the OpenJDK JVM there were concrete differences that made that old Openjdk JVM almost unusable in many environments. The JVMs are now the same.

    The JDKs which include the JVM as part of the Kit, differ by licensing, release and maintenance schedule, and the software libraries included in the JDK. Crucial differences to me also mean things that would make code not run if not present. Not only licensing.

    diff --brief -r openjdk oraclejdk
    

    Crucially the following files are missing in addition to a bunch of others on the linux JDK (So if you 'claimed' that code didn't work on OpenJDK and did so on OracleJDK while you were using javafx then you were correct):

    Only in jdk-10.0.1/bin: javapackager
    Only in jdk-10.0.1/bin: javaws
    Only in jdk-10.0.1/bin: jcontrol
    Only in jdk-10.0.1/bin: jmc
    Only in jdk-10.0.1/bin: jweblauncher
    Only in jdk-10.0.1/lib: ant-javafx.jar
    Only in jdk-10.0.1/lib: deploy
    Only in jdk-10.0.1/lib: deploy.jar
    Only in jdk-10.0.1/lib: desktop
    Only in jdk-10.0.1/lib: fontconfig.bfc
    Only in jdk-10.0.1/lib: fontconfig.properties.src
    Only in jdk-10.0.1/lib: fontconfig.RedHat.6.bfc
    Only in jdk-10.0.1/lib: fontconfig.RedHat.6.properties.src
    Only in jdk-10.0.1/lib: fontconfig.SuSE.11.bfc
    Only in jdk-10.0.1/lib: fontconfig.SuSE.11.properties.src
    Only in jdk-10.0.1/lib: fonts
    Only in jdk-10.0.1/lib: javafx.properties
    Only in jdk-10.0.1/lib: javafx-swt.jar
    Only in jdk-10.0.1/lib: java.jnlp.jar
    Only in jdk-10.0.1/lib: javaws.jar
    Only in jdk-10.0.1/lib: jdk.deploy.jar
    Only in jdk-10.0.1/lib: jdk.javaws.jar
    Only in jdk-10.0.1/lib: jdk.plugin.jar
    Only in jdk-10.0.1/lib: jfr
    Only in jdk-10.0.1/lib: libavplugin-53.so
    Only in jdk-10.0.1/lib: libavplugin-54.so
    Only in jdk-10.0.1/lib: libavplugin-55.so
    Only in jdk-10.0.1/lib: libavplugin-56.so
    Only in jdk-10.0.1/lib: libavplugin-57.so
    Only in jdk-10.0.1/lib: libavplugin-ffmpeg-56.so
    Only in jdk-10.0.1/lib: libavplugin-ffmpeg-57.so
    Only in jdk-10.0.1/lib: libbci.so
    Only in jdk-10.0.1/lib: libcmm.so
    Only in jdk-10.0.1/lib: libdecora_sse.so
    Only in jdk-10.0.1/lib: libdeploy.so
    Only in jdk-10.0.1/lib: libfxplugins.so
    Only in jdk-10.0.1/lib: libglassgtk2.so
    Only in jdk-10.0.1/lib: libglassgtk3.so
    Only in jdk-10.0.1/lib: libglass.so
    Only in jdk-10.0.1/lib: libgstreamer-lite.so
    Only in jdk-10.0.1/lib: libjavafx_font_freetype.so
    Only in jdk-10.0.1/lib: libjavafx_font_pango.so
    Only in jdk-10.0.1/lib: libjavafx_font.so
    Only in jdk-10.0.1/lib: libjavafx_iio.so
    Only in jdk-10.0.1/lib: libjfxmedia.so
    Only in jdk-10.0.1/lib: libjfxwebkit.so
    Only in jdk-10.0.1/lib: libnpjp2.so
    Only in jdk-10.0.1/lib: libprism_common.so
    Only in jdk-10.0.1/lib: libprism_es2.so
    Only in jdk-10.0.1/lib: libprism_sw.so
    Only in jdk-10.0.1/lib: librm.so
    Only in jdk-10.0.1/lib: libt2k.so
    Only in jdk-10.0.1/lib: locale
    Only in jdk-10.0.1/lib: missioncontrol
    Only in jdk-10.0.1/lib: oblique-fonts
    Only in jdk-10.0.1/lib: plugin.jar
    Only in jdk-10.0.1/lib: plugin-legacy.jar
    Only in jdk-10.0.1/lib/security: blacklist
    Only in jdk-10.0.1/lib/security: public_suffix_list.dat
    Only in jdk-10.0.1/lib/security: trusted.libraries
    Only in openjdk-10.0.1: man`
    

提交回复
热议问题