为什么 Java 7 版本在 jdk-7u80 之后不可用?

Why Java 7 release not available after jdk-7u80?

我想下载 JRE 1.7.0_131-b31 因为我阅读了它的支持 TLSv1.2 默认情况下

TLSv1.2 and TLSv1.1 are now enabled by default on the TLS client end-points. This is similar behavior to what already happens in JDK 8 releases.

但是 Oracle 站点显示了最新版本的 jdk-7u80,在此版本之后没有其他 Java 7 版本可用。

  1. 这是因为,用户必须购买license/paid版本吗?
  2. 这些版本不适用于个人开发者?

Why Java 7 release not available after jdk-7u80?

由于Oracle业务原因。免费 public 支持已于 2015 年 4 月结束。

(Backporting patches之类的需要一个团队,那是要花钱的,Oracle是商业企业,还有其他原因。)

Is this because user have to buy license/paid version ?

是的。您需要一份扩展支持合同才能使用 7u80

之后的版本

These version not available for individual developer ?

没有

如果您或您的客户需要 Java7 和 TLSv1.1 及更高版本,您的选择是:

  1. 升级到 Java 8 或(更好)11。这是最佳选择。
  2. 使用仍然支持 Java 7.
  3. 的第 3 方 JCE 提供程序(例如 BouncyCastle)
  4. 向 Oracle 支付 "Extended Support" 支持合同。

向客户指出,这是他们没有投入金钱/精力来使他们的 Java 应用程序与最新版本保持一致的代价。

如果他们仍在使用永久停留在 Java7 的旧库和应用程序,他们应该计划丢弃或替换它们。是的,这很痛苦,但如果他们不这样做,从长远来看会更痛苦。 (在 2022 年 7 月,甚至 "Extended Support" 结束 Java 7。之后,即使安全修复也将停止。)

请注意,Java 8 也将很快达到生命周期的尽头。事实上,Oracle Java 8 的商业用途免费支持已经停止。您/他们应该尽快达到 Java 11。

我还建议,如果他们希望您在 Java 7 继续支持他们,他们应该(实际上)支付您完成工作所需的 Java 支持合同.重新协商您的结算费率,或其他。

有关 Java 版本、生命周期终止和支持终止的更多信息;见: