OpenJDK 11.0.18 发行注记

OpenJDK 11

Red Hat Customer Content Services

摘要

OpenJDK 11.0.18 文档中的发行注记 概述了 OpenJDK 11 中的新功能以及潜在的已知问题列表和可能的解决方案。

前言

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 格式查看文档。

流程

要提供反馈,请执行以下步骤:

  1. 点文档右上角的 Feedback 按钮查看现有的反馈。

    注意

    反馈功能仅在多页 HTML 格式中启用。

  2. 高亮标记您要提供反馈的文档中的部分。
  3. 点在高亮文本旁弹出的 Add Feedback

    文本框中会出现在页面右侧的 feedback 部分中。

  4. 在文本框中输入您的反馈,然后点 Submit

    文档问题已创建。

  5. 要查看问题,请单击反馈视图中的问题跟踪器链接。

第 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-turbolibpnggiflib 用于镜像支持。RHEL 还动态链接 HarfbuzzFreetype,用于字体渲染和管理。
  • 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 证书。

其他资源

第 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 消息。

第 4 章 与这个版本相关的公告

本发行版本中包括了以下公告的程序错误修正和 CVE 修复:

更新于 2023-04-06

法律通告

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.