tl;博士
apangin接受的答案现在已经过时了。
对于Java 11等最新版本,Oracle JDK产品实际上与OpenJDK项目相同。OpenJDK现在包括Oracle以前的产品:Java Flight Recorder,Java Mission Control,Application Class-Data Sharing和ZGC。
引用 Oracle.com 博客:
因此,从Java 11开始,Oracle JDK构建和OpenJDK构建将基本相同。
Oracle JDK & OpenJDK converging
Oracle在过去几年中发生了巨大的变化。
Oracle宣布他们打算将他们的品牌Oracle JDK与OpenJDK融合到功能奇偶校验。两者都基于OpenJDK代码库。
为此,Oracle、Flight Recorder和Mission Control销售的以前商业工具现在是开源的,并捐赠给OpenJDK项目。在OpenJDK网站上看到这个和这个。
Oracle和OpenJDK联盟的其他成员贡献了更多的源代码,使OpenJDK代码库完全开源,不受GNU GPL+链接例外以外的许可证的阻碍。
甲骨文已经改变了他们的许可条款。Oracle JDK 品牌产品不再免费用于生产。或者,您可以从六个以上的供应商中的任何一个获得OpenJDK的免费分发,其中包括Oracle的供应商。有关所有详细信息,请参阅由Java社区的支柱撰写的重要白皮书,Java仍然是免费的。
我绘制了这个流程图来指导您选择JDK源代码。
Oracle保留为自己的品牌产品打补丁的权利,以解决紧急修复或安全漏洞。但该公司已表示,他们打算与其他OpenJDK成员一起做出贡献并进行协调。Oracle继续拥有Java商标,并引领Java平台的未来。对于现有的长期支持 (LTS) 版本 8 和 11,Oracle 已将管理权让渡给 RedHat (IBM)。
HotSpot vs OpenJ9
这里的问题问:
OpenJDK VM 和 Oracle Hotspot VM 仍然是两个不同的 JVM 吗?
如上所述,这两个产品在功能奇偶校验处收敛。关于热点技术,请继续阅读。
如上所述,HotSpot是Oracle JDK和OpenJDK中的一个组件。今天的HotSpot还结合了JRockit的部分内容。Oracle合并了两个Java引擎的精华,从Sun Microsystems和BEA Systems收购了它们。
Eclipse基金会的Adoptium项目(以前称为AdoptOpenJDK)也提供了OpenJDK的构建,使用Eclipse OpenJ9(基于J9,由IBM捐赠)作为HotSpot的替代品。从Adoptium网站下载时,您可以从菜单中选择HotSpot或OpenJ9。
目前,测试似乎显示OpenJ9的启动速度要快得多,同时使用更少的内存,但是如果持续使用,HotSpot可能会运行得更快。但对于OpenJ9来说,这还处于早期阶段,因此请亲自调查最新发展。