OpenJDK 11.0.19 发行注记

OpenJDK 11

Red Hat Customer Content Services

摘要

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

前言

OpenJDK(Open Java Development Kit)是 Java Platform, Standard Edition (Java SE) 的一个开源实现。红帽构建的 OpenJDK 在三个版本中提供:OpenJDK 8u、OpenJDK 11u 和 OpenJDK 17u。

红帽构建的 OpenJDK 软件包在 Red Hat Enterprise Linux 和 Microsoft Windows 上提供,并作为红帽生态系统目录中的 JDK 和 JRE 提供。

使开源包含更多

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。详情请查看 CTO Chris Wright 的信息

对红帽文档提供反馈

我们感谢您对我们文档的反馈。要提供反馈,您可以突出显示文档中的文本并添加注释。

本节介绍如何提交反馈。

先决条件

  • 已登陆到红帽客户门户网站。
  • 在红帽客户门户中,以多页 HTML 格式查看文档。

流程

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

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

    注意

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

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

    文本框将在页面右侧的"反馈"部分中打开。

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

    创建了一个与文档相关的问题。

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

第 1 章 OpenJDK 的支持政策

红帽在其产品中支持所选的 OpenJDK 主版本。为了实现一致性,这些版本与 Oracle 为 Oracle JDK 指定的 "LTS" 相同。

自首次引入后,OpenJDK 的主版本会最少在六年内被支持。

在 Microsoft Windows 和 Red Hat Enterprise Linux 上支持 OpenJDK 11,直到 2024 年 10 月为止。

注意

RHEL 6 于 2020 年 11 月结束其生命周期。因此,OpenJDK 不支持 RHEL 6 作为支持配置。

请参阅 OpenJDK 生命周期和支持政策

第 2 章 与上游 OpenJDK 11 的不同

Red Hat Enterprise Linux(RHEL)中的 OpenJDK 包含了来自 OpenJDK 上游发行版的许多结构更改。Microsoft Windows 版本尝试尽快遵循 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 的最新可用时区数据。
  • Microsoft Windows 上的 Red Hat OpenJDK 使用 RHEL 的最新可用 CA 证书。

其他资源

第 3 章 OpenJDK 功能

最新的 OpenJDK 11 发行版本可能包括新功能。另外,最新版本可能会增强、弃用或删除来自以前 OpenJDK 11 版本的功能。

注意

有关所有其他更改和安全修复,请参阅 OpenJDK 11.0.19 发行版本

OpenJDK 的新功能和增强

请参阅以下发行注记以了解 OpenJDK 11.0.19 发行版本中包含的新功能和功能增强:

SSLv2Hello 和 SSLv3 协议从默认启用的 TLS 协议中删除

SSLv2Hello 和 SSLv3 是默认禁用的 SSL 协议版本,因为它们在一段时间内不被视为安全。SSLv2Hello 和 SSLv3 协议由更安全的、现代 TLS 协议替代,用户可以切换到 TLS 版本 1.2 或 1.3。

随着 OpenJDK 11.0.19 版本,默认启用的协议列表不再包含 SSLv2Hello 和 SSLv3。因此,即使您从 jdk.tls.disabledAlgorithms 安全属性中删除 SSLv3,以下方法将不再返回 SSLv3:

  • SSLServerSocket.getEnabledProtocols()
  • SSLEngine.getEnabledProtocols()
  • SSLParameters.getProtocols()

现在,如果要启用 SSLv3,则必须使用 jdk.tls.client.protocolsjdk.tls.server.protocols 系统属性,或者使用以下方法之一启用 SSLv3:

  • SSLSocket.setEnabledProtocols()
  • SSLServerSocket.setEnabledProtocols()
  • SSLEngine.setEnabledProtocols()

请参阅 JDK-8190492 (JDK Bug System)

Certigna (Dhimyotis) root 证书颁发机构 (CA) 证书

在 OpenJDK 11.0.19 中,cacerts truststore 包括 Certigna (Dhimyotis) root 证书:

  • 名称:Certigna (Dhimyotis)
  • 别名名称:certignarootca
  • 标识名称: CN=Certigna, O=Dhimyotis, C=FR

请参阅 JDK-8245654 (JDK Bug System)

listRoots 方法返回 Windows 上所有可用驱动器

在以前的版本中,Windows 系统上的 java.io.File.listRoots() 方法过滤掉所有无法访问或者没有加载介质的磁盘驱动器。但是,这个过滤会导致可观察到的性能问题。

现在,随着版本 OpenJDK 11.0.19 的发布,listRoots 方法会返回所有可用的磁盘驱动器未过滤。

请参阅 JDK-8208077 (JDK Bug System)

增强的 Swing 平台支持

在 OpenJDK 的早期版本中,html 对象标签呈现在 Swing HTML 组件中。在 OpenJDK 11.0.19 版本中,只有在将新系统属性 swing.html.object 设置为 true 时才会进行渲染。默认情况下,swing.html.object 属性设置为 false。

JDK 错误系统参考 ID: JDK-8296832。

第 4 章 与本发行版本相关的公告

以下公告包括了记录程序错误修复和 CVE 修复:

更新于 2023-05-02

法律通告

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.