Oracle JDK与Oracle OpenJDK之间的差异
尽管已经声明了使OpenJDK和Oracle JDK二进制文件尽可能地接近的目标,但是这两个选项之间仍然存在一些差异。
当前的区别是:
- 甲骨文JDK提供“安装程序”( ,,等),这不仅将系统中的JDK二进制文件也包含更新规则,并在某些情况下,处理像一套通用的环境变量一些常见的配置(如,JAVA_HOME在Windows)和建立文件关联(例如,用于启动文件)。OpenJDK仅作为压缩归档文件(或)提供。
msi
rpm
deb
java
.jar
tar.gz
.zip
- 使用情况日志记录仅在Oracle JDK中可用。
- Oracle JDK要求使用Java密码学扩展(JCE)代码签名证书对第三方加密提供程序进行签名。OpenJDK继续允许使用未签名的第三方加密提供程序。
- 的输出
java -version
是不同的。Oracle JDK返回java
并包含Oracle特定的标识符。OpenJDK返回OpenJDK,并且不包含Oracle特定的标识符。 - Oracle JDK是根据OTN许可发行的。OpenJDK在GPLv2wCP下发布。因此,每个随附的许可证文件将不同。
- Oracle JDK按照FreeType许可证分发FreeType,而OpenJDK按照GPLv2分发FreeType。因此,的内容
\legal\java.desktop\freetype.md
不同。 - Oracle JDK具有Java cup和steam图标,而OpenJDK具有Duke图标。
- Oracle JDK源代码包括“ ORACLE专有/机密。使用须遵守许可条款。” 与OpenJDK一起分发的源代码引用了GPL许可条款。
来自于官网