我安装了 JDK 8u60。我今天查看了Oracle 网站,他们同时发布了两个版本:8u65和8u66。两者都是公开发布版本。
- 他们为什么同时发布两个版本?
- 什么条件/原因会使一个人选择一个而不是另一个?
从下载页面(强调添加):
Java SE 8u65 包含重要的安全修复。Oracle 强烈建议所有 Java SE 8 用户升级到此版本。Java SE 8u66 是一个补丁集更新,包括所有 8u65以及附加功能(在发行说明中描述)。
Oracle 经常这样做。这完全取决于您作为客户希望如何处理风险。
如果用户受到发行说明中所述版本中修复的附加错误之一的影响,则应仅使用相应的 PSU 版本。
8u65 具有安全修复程序,并为公司实现Java 8 应用程序设置了新的安全“基线”。8u66 具有相同的安全更新,以及额外的错误修复。但是,即使是错误修复有时也会导致行为发生变化,从而给用户带来兼容性问题。因此 8u66 中的更改是可选的(请注意,上面链接的基线仍然是 1.8.0_65,并且希望在其平台中获得更高稳定性的公司可能更愿意只应用必要的安全修复程序。
甲骨文当然没有义务以这种方式拆分他们的更新,但我相信他们的一些最厌恶风险的客户很高兴有这个选择。
这是Oracle 官方的回答:
Java CPU 和 PSU 版本说明
从 2014 年 10 月发布 Java SE 7 Update 71 (Java SE 7u71) 开始,Oracle 将与 Java SE 7 的相应补丁集更新 (PSU) 同时发布重要补丁更新 (CPU)。
我应该选择哪个 Java 版本:CPU 还是 PSU?
Oracle 强烈建议所有 Java SE 用户升级到适用于某个版本系列的最新 CPU 版本。大多数用户应该选择 CPU 版本。
如果用户受到发行说明中所述版本中修复的附加错误之一的影响,则应仅使用相应的 PSU 版本。
随后的 CPU 版本将包含当前 PSU 的所有修复。出于这个原因,组织应该在他们的环境中测试当前的 PSU,以期待这些修复被包含在下一个 CPU 中。
Java CPU 和 PSU 版本有什么区别?
Java SE 重要补丁更新 (CPU) 包含对安全漏洞的修复和关键错误修复。Oracle 强烈建议所有 Java SE 用户升级到最新的 CPU 版本,因为它们可用。Java SE CPU 版本是奇数版本(即 7u71、7u65 - 在此处查看有关 Java SE 版本编号方案的更多信息)。
Java SE 补丁集更新 (PSU) 包含相应 CPU 中的所有修复,以及其他非关键修复。仅当您受到该版本中修复的附加错误之一的影响时,才应使用 Java PSU 版本。发行说明列出了 Java SE PSU 版本中可用的其他修复。
CPU 发布的节奏是否在变化?
和以前一样,Java SE CPU 版本计划在正常的 Oracle 重要补丁更新计划下,在最接近 1 月、4 月、7 月和 10 月的第 17 天的星期二发布。
从 2014 年 10 月开始,随着 Java SE 7u71 (CPU) 和 Java SE 7u72 (PSU) 的发布,Oracle 计划在 Java SE 7 的每个 CPU 版本中额外发布相应的 PSU 版本。PSU 版本为组织和开发人员提供访问除了相应 CPU 中包含的关键修复之外的非关键修复。
除非您知道需要修复 u74 中的错误,否则请使用 u73。
如果您有现有项目,请使用 8u65。如果您从头开始使用 8u66。我正在安装 NetBeans 8.1,所以我使用 8u66,以防 NB8.1 代码有 8u65 中的 15 个错误中的任何一个,而这些错误在 8u66 中没有解决。
我在 Haven and Hearth 上找到了以下信息:
u73(-b02) 是公共版本
u74(-b02) 是公共捆绑补丁版本(包含额外的非安全相关修复)
我想你只需要下载74,然后。