OpenJDK 11.0.18 发行注记
摘要
前言
OpenJDK (Open Java Development Kit)是 Java Platform, Standard Edition (Java SE)的免费开源实现。Red Hat build of OpenJDK 有三个版本:OpenJDK 8u、OpenJDK 11u 和 OpenJDK 17u。
Red Hat build of OpenJDK 的软件包包括在 Red Hat Enterprise Linux 和 Microsoft Windows 上,并作为 Red Hat Ecosystem Catalog 中的 JDK 和 JRE 提供。
使开源包含更多
红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。详情请查看 CTO Chris Wright 的信息。
对红帽文档提供反馈
我们感谢您对我们文档的反馈。要提供反馈,您可以突出显示文档中的文本并添加注释。
本节介绍如何提交反馈。
先决条件
- 登录到红帽客户门户网站。
- 在红帽客户门户网站中,以 多页 HTML 格式查看文档。
流程
要提供反馈,请执行以下步骤:
点文档右上角的 Feedback 按钮查看现有的反馈。
注意反馈功能仅在多页 HTML 格式中启用。
- 高亮标记您要提供反馈的文档中的部分。
点在高亮文本旁弹出的 Add Feedback。
文本框中会出现在页面右侧的 feedback 部分中。
在文本框中输入您的反馈,然后点 Submit。
文档问题已创建。
- 要查看问题,请单击反馈视图中的问题跟踪器链接。
第 1 章 OpenJDK 的支持策略
红帽在其产品中支持选择的 OpenJDK 主版本。为实现一致性,这些版本与 Oracle 为 Oracle JDK 指定 'LTS' 的版本相同。
自首次推出时,一个 OpenJDK 的主要版本最少提供六年的支持。
OpenJDK 11 在 Microsoft Windows 和 Red Hat Enterprise Linux 上被支持,直到 2024 年 10 月。
RHEL 6 在 2020 年 11 月结束其生命周期。因此,OpenJDK 不支持 RHEL 6 作为支持配置。
请参阅 OpenJDK 生命周期和支持政策。
第 2 章 上游 OpenJDK 11 的不同
Red Hat Enterprise Linux (RHEL)中的 OpenJDK 包含了来自 OpenJDK 上游发行版本的一些结构性更改。Microsoft Windows 版本的 OpenJDK 尝试尽可能密切地遵循 RHEL 更新。
以下列表详细介绍了 Red Hat OpenJDK 11 的最显著更改:
- FIPS 支持。Red Hat OpenJDK 11 会自动检测 RHEL 是否处于 FIPS 模式,并自动配置 OpenJDK 11 以该模式运行。这个更改不适用于 Microsoft Windows 的 OpenJDK 构建。
- 加密策略支持。Red Hat OpenJDK 11 从 RHEL 获取启用的加密算法和密钥大小限制列表。这些配置组件由传输层安全(TLS)加密协议、证书路径验证和任何签名的 JAR 使用。您可以设置不同的安全配置集来平衡安全性和兼容性。这个更改不适用于 Microsoft Windows 的 OpenJDK 构建。
-
RHEL 上的 Red Hat OpenJDK 会针对原生库进行动态链接,如
zlib用于归档格式支持,libjpeg-turbo、libpng、giflib用于镜像支持。RHEL 还动态链接Harfbuzz和Freetype,用于字体渲染和管理。 -
src.zip文件包含 OpenJDK 附带的所有 JAR 库的源。 - RHEL 上的 Red Hat OpenJDK 使用系统范围的时区数据文件作为时区信息源。
- RHEL 上的 Red Hat OpenJDK 使用系统范围的 CA 证书。
- Microsoft Windows 上的 Red Hat OpenJDK 包括 RHEL 中最新的可用时区数据。
- Red Hat OpenJDK on Microsoft Windows 使用 RHEL 中最新可用的 CA 证书。
其他资源
- 有关检测系统是否处于 FIPS 模式的更多信息,请参阅 Red Hat RHEL 计划 JIRA 中的增强 系统 FIPS 检测 示例。
- 有关加密策略的更多信息,请参阅 使用系统范围的加密策略。
第 3 章 OpenJDK 功能
最新的 OpenJDK 11 发行版本可能包括新功能。另外,最新的发行版本可能会增强、弃用或删除来自以前的 OpenJDK 11 版本的功能。
有关所有其他更改和安全修复,请参阅 OpenJDK 11.0.18 Released。
OpenJDK 新功能及功能增强
请参阅以下发行注记以了解 OpenJDK 11.0.18 发行版本中包括的新功能和功能增强:
增强的 BMP 绑定
默认情况下,OpenJDK 11.0.18 禁用 BMP 镜像中的载入链接国际 Color Consortium (ICC)配置集。您可以通过将新的 sun.imageio.bmp.enabledLinkedProfiles 属性设置为 true 来启用此功能。此属性替换了旧的 sun.imageio.plugins.bmp.disableLinkedProfiles 属性
请参阅 JDK-8295687 (JDK Bug System)。
改进了声音的银行
在以前的版本中,Sound bankReader 实施,com.sun.media.sound.JARSoundbankReader 从 URL 下载 JAR soundbank。对于 OpenJDK 11.0.18,这个行为现在默认禁用。要重新启用此行为,请将新的系统属性 jdk.sound.jarsoundbank 设置为 true。
请参阅 JDK-8293742 (JDK Bug System)。
增强的 Datagram Transport Layer Security (DTLS)性能
OpenJDK 现在为所有新的和恢复握手通信交换 DTLS cookie。
要重新启用之前的版本行为,请将新系统属性 jdk.tls.enableDtlsResumeCookie 设置为 false。
请参阅 JDK-8287411 (JDK Bug System)。
SunMSCAPI 供应商支持新的 Microsoft Windows 密钥存储类型
SunMSCAPI 供应商支持以下 Microsoft Windows 密钥存储类型,您可以在其中将本地命名空间附加到 Windows- :
-
Windows-MY-LOCALMACHINE -
Windows-ROOT-LOCALMACHINE -
Windows-MY-CURRENTUSER -
Windows-ROOT-CURRENTUSER
通过指定任何这些类型,您可以为 Microsoft Windows 密钥存储提供对本地计算机位置的访问。因此,为保存在本地系统中的证书提供密钥存储访问。
请参阅 JDK-6782021 (JDK Bug System)。
添加了 LoginModule 实现的备注
OpenJDK 9 发行版本更改了 Set 实现,它包含主体和凭证,以便实施可以拒绝 null 值。任何调用 add (null) 的尝试,包含(null) 或 remove (null) 将会抛出 NullPointerException 消息。
OpenJDK 9 发行版本不会更新 LoginModule 实现中的 logout () 方法,以检查 null 值。这些值可能会因为登录尝试失败而发生,这可能会导致 logout () 调用抛出 NullPointerException 消息。
OpenJDK 11.0.18 发行版本更新了 LoginModule 实现,以检查 null 值。另外,这个版本在规格中添加了实施备注,说明更改也适用于第三方模块。注意向第三方模块开发人员建议开发人员,以验证 logout () 方法没有抛出 NullPointerException 消息。
- 请参阅 JDK-8015081 (JDK Bug System)。
- 请参阅 JDK-8282730 (JDK Bug System)。
第 4 章 与这个版本相关的公告
本发行版本中包括了以下公告的程序错误修正和 CVE 修复:
更新于 2023-04-06