Oracle JDK 11存在但OpenJDK 17(Eclipse Temurin)缺失的组件核心差异查询
Oracle JDK 11 包含但 Eclipse Temurin OpenJDK 17 缺失的核心组件差异
以下差异分为两类:一类是Oracle JDK专属闭源组件,从未进入OpenJDK上游;另一类是OpenJDK 11版本存在,但在11到17的版本迭代中被上游正式移除的组件。
Oracle 专属闭源商业组件
所有OpenJDK发行版(含Eclipse Temurin)全版本均不包含这类组件:
- 商业增强版Java Flight Recorder(JFR):基础版JFR已由Oracle捐赠到OpenJDK 11+,但Oracle JDK 11内置的JFR额外包含商业专属诊断事件,比如更细粒度的内存泄漏追踪、Oracle数据库联动诊断、高级性能分析事件,Temurin 17仅提供开源基础版JFR。
- Java Mission Control(JMC)商业扩展插件:Oracle JDK 11捆绑的JMC带专属的商业诊断、调优插件,Temurin不提供也不捆绑该类闭源扩展。
SunPKCS11加密提供程序商业增强:Oracle JDK 11内置的SunPKCS11实现了FIPS 140-2 Level 3认证的专属增强,Temurin 17仅提供开源标准版本的SunPKCS11实现。- Java Usage Tracker:用于企业内部JDK部署实例统一监控的专属工具,仅Oracle商用JDK提供,OpenJDK无对应实现。
- Java Web Start(JWS)与浏览器Java插件:Oracle JDK 11商用版保留了JWS和浏览器Java插件的支持,OpenJDK 11及以上全版本均移除了这两个组件,Temurin 17无对应实现。
OpenJDK 11→17 迭代中被正式移除的组件
这类组件在OpenJDK 11中存在,Oracle JDK 11也对应支持,但OpenJDK 17已正式移除,因此Temurin 17不包含:
- Java EE与CORBA相关模块:包括
java.xml.ws、java.xml.bind、java.corba、java.transaction、java.activation、java.se.ee元模块,Oracle JDK 11仍提供这些模块的可选启用支持,Temurin 17已完全移除。 - Nashorn JavaScript引擎:JDK 11标记为废弃,JDK 17正式移除,Oracle JDK 11默认捆绑该引擎,Temurin 17无对应实现。
- Applet API:JDK 17正式移除整套Applet相关API,Oracle JDK 11仍保留(已标记废弃)。
- RMI Activation机制:JDK 15标记废弃,JDK 17正式移除,Oracle JDK 11包含完整的RMI Activation实现。
- SNMP JVM监控代理:JDK 17正式移除该代理,Oracle JDK 11内置完整的SNMP监控支持。
注:部分原本属于Oracle专属的组件已经捐赠到OpenJDK上游,比如基础版JFR、ZGC垃圾回收器等,这类组件在Temurin 17中均有提供,不属于差异范畴。
内容的提问来源于stack exchange,提问作者Niwedita Rani
相关产品推荐
相关产品推荐

