从技术上讲,Oracle JDK 和 OpenJDK 之间的主要区别是什么? [复制]

2023-11-24

我使用 OpenJDK 已经很多年了,最初是用于小型项目,它没有出现任何问题。但自从我开始把它当作大玩具时,我开始注意到随机/未知的致命错误和崩溃(使用 H.264 编解码器等),直到那时才遇到系统崩溃+致命错误由 OpenJDK 引起。

在对 OpenJDK 感到彻底沮丧和厌倦之后,我最终决定切换到 Oracle JDK 7。从那时起,我的致命错误/崩溃就消失了。我仍在进行跟踪以查看它是否发生,但我还没有遇到过这些系统崩溃。

现在我想知道,如果OpenJDK只是一个许可证问题,为什么它不可能稳定呢?

为什么 OpenJDK 在其稳定版本中保留错误,但声称它是 Oracle JDK 的克隆(实际上并非如此),那么从技术上来说,OpenJDK 与 Oracle JDK 的真正区别是什么? (仅快速提供功能?还是注重稳定性/可靠性?)


技术差异是每个目标的结果(OpenJDK 旨在成为参考实现,向社区开放,而 Oracle 旨在成为商业实现)

它们都具有“几乎”相同的 Java API 中的类代码;但虚拟机本身的代码其实是不一样的,在库方面,OpenJDK倾向于使用开放库,而Oracle倾向于使用封闭库;例如,字体库.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从技术上讲,Oracle JDK 和 OpenJDK 之间的主要区别是什么? [复制] 的相关文章

随机推荐