奇怪甚至Java更新之间的区别是什么?

时间:2015-10-21 13:27:48

标签: java version oraclejdk

我安装了JDK 8u60。我今天检查了Oracle website,他们同时发布了两个版本:8u658u66。两者都是公开发布版本。

  • 他们为什么同时发布两个版本?
  • 什么条件/理由会让人选择一个?

4 个答案:

答案 0 :(得分:95)

来自the download page强调添加):

  

Java SE 8u65包含重要的安全修复程序。甲骨文强烈   建议所有Java SE 8用户升级到此版本。 Java SE   8u66是一个补丁集更新,包括所有8u65 加上额外的   功能(在发行说明中描述)。

Oracle often does this。这完全取决于您作为客户如何处理风险。

  

用户只应使用相应的PSU版本   受到该版本中修复的其中一个错误的影响,如中所述   发行说明。

8u65具有安全修复程序,sets a new security "baseline"用于公司实现 Java 8 applications。 8u66具有相同的安全更新plus additional bug fixes。但是,即使错误修复有时也会导致更改行为,从而导致用户出现兼容性问题。因此,8u66中的更改是可选(请注意,上面链接的基线仍为1.8.0_65,而在其平台中需要更高稳定性的公司可能更愿意仅应用必要的安全修复程序。

甲骨文当然没有义务以这种方式分割他们的更新,但我确信他们最厌恶风险的客户很高兴有这个选择。

答案 1 :(得分:29)

这是官方Oracle's answer

  

Java CPU和PSU版本说明

     

从Java SE 7 Update 71(Java SE 7u71)的发布开始   2014年10月,Oracle将发布重要补丁更新(CPU)   与Java SE 7相应的补丁集更新(PSU)相同。

           

我应该选择哪个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发布计划在发布时发布   星期二最接近1月,4月,7月和10月的第17天   在正常的Oracle重要补丁更新计划下。

     

从2014年10月开始发布Java SE 7u71(CPU)和   Java SE 7u72(PSU),Oracle计划另外发布一个   相应的PSU版本以及Java SE 7的每个CPU版本。   PSU版本为组织和开发人员提供访问权限   除了包含在关键修复程序中的非关键修复程序   相应的CPU。


除非您知道需要修复u74中的错误,否则请使用u73。

答案 2 :(得分:0)

如果您有现有项目,请使用8u65。如果你从头开始使用8u66。我正在安装NetBeans 8.1,所以我使用8u66,以防NB8.1代码中的8u65中的任何15个错误在8u66中无法解决。

答案 3 :(得分:0)

我在Haven和Hearth上找到了这个信息:

  u73(-b02)是公开发布的   u74(-b02)是公共捆绑补丁版本(包含额外的非安全相关修补程序)

我认为你只需下载74,然后。