我知道Oracle不为旧的java版本提供更新和安全补丁,例如:openjdk8,openjdk11等。但是我们可以使用homebrew安装openjdk,这是通过homebrew-core github存储库上的公式文件指定的。
链接:https://github.com/Homebrew/homebrew-core/blob/master/Formula/o/openjdk%408.rb https://github.com/Homebrew/homebrew-core/blob/master/Formula/o/openjdk%4011.rb
现在,我无法理解(并在其他地方找到)这些 jdk 版本是否已过时或正在使用最新的安全补丁等进行更新。
很难相信这些已经过时了,因为它们在整个行业中得到了广泛/广泛的使用。
如果是第二种选择,这些选项会定期更新。那么我的问题是谁在更新和维护这些?如果这是 Openjdk 项目流程本身的一部分(对所有协作者开放并且各个协作者都在贡献),但最后谁在这里提供二进制构建?这些个人协作者无法在这里提供构建。
Oracle 不为较旧的 java 版本提供更新和安全补丁
不正确。 Oracle 多年来一直支持其 JDK 产品的旧版本。其中有几年向公众提供了更新。多年来,这些更新都可供付费客户使用。
顺便说一句,Oracle 只是提供 JDK 产品(二进制文件、安装程序)的几家供应商之一。其他包括 Microsoft、Amazon、Adoptium of the Eclipse Foundation、BellSoft、Azul Systems、Red Hat、IBM、SAP 等。其中一些产品是免费提供的,有些则需要通过支持计划付费。
所有这些供应商都使用OpenJDK项目中的开源代码库,该项目实现了Java规范。了解 OpenJDK 项目仅生成源代码,而不生成二进制文件/安装程序。该源代码由 OpenJDK 联盟成员和其他捐助者在 Oracle 的领导下自愿维护。
从浏览链接脚本来看,Homebrew 似乎从 Azul Systems 采购 JDK 7 产品。对于 JDK 8,我无法破译该脚本,只能说“可能”Homebrew 实际上直接编译从 OpenJDK 站点获得的源代码 - 但我不确定。无论如何,关于更新政策,您应该询问 Homebrew 支持,而不是 Stack Overflow。
您可以考虑使用来安装/卸载 JDK 产品(以及类似的软件包产品)。这个巧妙的 shell 脚本集合可以轻松地列出、下载和安装来自您选择的多个供应商的 JDK 产品,这些供应商选择提交描述其产品的数据。