OracleJDK 和 OpenJDK 有什么区别?来看看大神的回答!
火焰蓝程猿
共 1740字,需浏览 4分钟
·
2021-09-25 21:24
关注Java核心技术,推送更多 Java 干货!
来源:zhihu.com/question/19882320
借用知乎大神RednaxelaFX的文章分享下这个问题:
Oracle JDK与OpenJDK里的JVM都是HotSpot VM。从源码层面说,两者基本上是同一个东西。
从JDK7开始,Oracle JDK里的HotSpot VM,在研发的时候其实就是用放在OpenJDK的Mercurial代码库。也就是说跟大家从外部能实时看到的OpenJDK用的是同一个代码库。
HotSpot VM只有非常非常少量的功能没有在OpenJDK里,那部分在Oracle内部的代码库里。这些私有部分都不涉及JVM的核心功能。
所以当一个Oracle员工要构建OpenJDK时,他要做的事情跟外面的人一样:从http://hg.openjdk.java.net签出代码,构建。
值得注意的是,Oracle JDK只发布二进制安装包,而OpenJDK只发布源码。
最近好文分享1. 最新 Java 面试题出炉!(带全部答案)
2. 重磅!Oracle 宣布从 JDK 17 开始正式免费。。3. Java 调用第三方接口,实战来了!4. 用好这个IDEA插件,写代码效率至少提升5倍!
5. 手写一个迷你版 HashMap,面试随便问!
更多请关注 • Java核心技术一个分享Java核心技术干货的公众号
点击阅读原文获取面试题~评论