Red Hat build of OpenJDK 21.0.1 のリリースノート


Red Hat build of OpenJDK 21

Red Hat Customer Content Services

概要

Red Hat build of OpenJDK 21.0.1 のリリースノート』 のドキュメントには、Red Hat build of OpenJDK 21 の新機能の概要と、潜在的な既知の問題と考えられる回避策のリストが記載されています。

はじめに

Red Hat build of OpenJDK (Open Java Development Kit) は、Java Platform Standard Edition (Java SE) のオープンソース実装です。Red Hat build of OpenJDK は、8u、11u、17u、21u の 4 つのバージョンで利用できます。

Red Hat build of OpenJDK 向けパッケージは、Red Hat Enterprise Linux および Microsoft Windows で利用でき、Red Hat Ecosystem Catalog の JDK および JRE として同梱されています。

Red Hat build of OpenJDK ドキュメントへのフィードバック

エラーを報告したり、ドキュメントの改善を提案したりするには、Red Hat Jira アカウントにログインし、課題を送信してください。Red Hat Jira アカウントをお持ちでない場合は、アカウントを作成するように求められます。

手順

  1. 次のリンクをクリックして チケットを作成します
  2. Summary に課題の簡単な説明を入力します。
  3. Description に課題や機能拡張の詳細な説明を入力します。問題があるドキュメントのセクションへの URL も記載してください。
  4. Submit をクリックすると、課題が作成され、適切なドキュメントチームに転送されます。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、用語の置き換えは、今後の複数のリリースにわたって段階的に実施されます。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。

第1章 Red Hat build of OpenJDK のサポートポリシー

Red Hat は、Red Hat build of OpenJDK の一部のメジャーバージョンを製品でサポートします。一貫性を保つために、これらのバージョンは長期サポート (LTS) として指定されている Oracle JDK バージョンと同様のままとなります。

Red Hat build of OpenJDK のメジャーバージョンは、最初に導入された時点から少なくとも 6 年間サポートされます。詳細は、OpenJDK のライフサイクルおよびサポートポリシー を参照してください。

注記

RHEL 6 のライフサイクルは 2020 年 11 月に終了します。このため、Red Hat build of OpenJDK はサポート対象設定として RHEL 6 をサポートしません。

第2章 アップストリームの OpenJDK 21 との相違点

Red Hat Enterprise Linux の OpenJDK には、Red Hat build of OpenJDK のアップストリームディストリビューションの構造上の変更が数多く含まれています。Microsoft Windows バージョンの Red Hat build of OpenJDK は、Red Hat Enterprise Linux の更新にできる限り従います。

以下は、Red Hat build of OpenJDK 21 における最も注目すべき変更のリストです。

  • FIPS のサポート。Red Hat build of OpenJDK 21 は、RHEL が FIPS モードであるかを自動的に検出し、Red Hat build of OpenJDK 21 がそのモードで動作するように自動的に設定します。この変更は、Microsoft Windows 向けの Red Hat build of OpenJDK ビルドには適用されません。
  • 暗号化ポリシーのサポート。Red Hat build of OpenJDK 21 は、有効な暗号化アルゴリズムとキーサイズ制約のリストを RHEL システム設定から取得します。これらの設定コンポーネントは、トランスポート層セキュリティー (TLS) 暗号化プロトコル、証明書パス検証、および署名された JAR によって使用されます。さまざまなセキュリティープロファイルを設定して、安全性と互換性のバランスをとることができます。この変更は、Microsoft Windows 向けの Red Hat build of OpenJDK ビルドには適用されません。
  • src.zip ファイルには、Red Hat build of OpenJDK に同梱されるすべての JAR ライブラリーのソースが含まれます。
  • RHEL の Red Hat build of OpenJDK は、タイムゾーン情報のソースとして、システム全体のタイムゾーンデータファイルを使用します。
  • RHEL の Red Hat build of OpenJDK は、システム全体の CA 証明書を使用します。
  • Microsoft Windows の Red Hat build of OpenJDK には、RHEL で利用可能な最新のタイムゾーンデータが含まれています。
  • Microsoft Windows 向け Red Hat build of OpenJDK は、RHEL から入手可能な最新の CA 証明書を使用します。

第3章 Red Hat build of OpenJDK 17 との相違点

Red Hat build of OpenJDK 21 には、以前の長期サポート (LTS) リリースである Red Hat build of OpenJDK 17 では利用できない機能拡張が多数含まれています。

Red Hat build of OpenJDK 21 に含まれる追加の Java Enhancement Proposal (JEP) の詳細は、JEPs in JDK 21 integrated since JDK 17 を参照してください。

第4章 非推奨でサポート対象外の Red Hat build of OpenJDK の機能

Red Hat build of OpenJDK 21 をインストールする前に、以下の非推奨およびサポート対象外の機能を確認してください。

Windows パッケージ向け Red Hat build of OpenJDK 21 の JDK Mission Control
Red Hat build of OpenJDK 21 の Windows インストーラーと zip アーカイブでは、JDK Mission Control (JMC) のディストリビューションが提供されなくなりました。Red Hat build of Cryostat 使用して、Red Hat OpenShift などのクラウドプラットフォームにデプロイされた Java アプリケーションの JFR 記録を管理できます。JMC の削除に関する詳細は、Red Hat ナレッジベースのアーティクル記事 Where is JDK Mission Control (JMC) in JDK 21? を参照してください。
削除予定の Finalization が非推奨となる
このリリースでは、今後のリリースで削除される予定である Finalization が非推奨になります。詳細は、JEP 421: Deprecate Finalization for Removal を参照してください。
エージェントの動的ロードを許可しない準備をする
このリリースでは、実行中の JVM にエージェントが動的にロードされるときに警告が発行されます。エージェントの動的ロードは、今後のリリースではデフォルトで許可されない予定です。詳細は、JEP 451: Prepare to Disallow the Dynamic Loading of Agents を参照してください。
注記

Red Hat は、32 ビットをサポートする builds of OpenJDK を提供していません。OpenJDK 21 では、Windows 32 ビット x86 サポートもアップストリームで非推奨となりました。この機能は今後のリリースで削除されます。詳細は、JEP 449: Deprecate the Windows 32-bit x86 Port for Removal を参照してください。

第5章 Red Hat build of OpenJDK 21 の新機能

Red Hat build of OpenJDK 21 の初期リリースには、Java アプリケーションの使用を強化する新機能が含まれています。

Red Hat build of OpenJDK 21 には、以下の新機能が含まれています。

UTF-8 (デフォルト)
詳細は、JEP 400: UTF-8 by Default を参照してください。
シンプルな Web サーバー
詳細は、JEP 408: Simple Web Server を参照してください。
Java API ドキュメントのコードスニペット
詳細は、JEP 413: Code Snippets in Java API Documentation を参照してください。
メソッドハンドルを使用したコアリフレクションの再実装
詳細は、JEP 416: Reimplement Core Reflection with Method Handles を参照してください。
インターネットアドレス解決 SPI
詳細は、JEP 418: Internet-Address Resolution SPI を参照してください。
Linux/RISC-V ポート
詳細は、JEP 422: Linux/RISC-V Port を参照してください。
スコープ付きの値 (プレビュー機能)
詳細は、JEP 429: Scoped Values (Preview) を参照してください。
文字列テンプレート (プレビュー機能)
詳細は、JEP 430: String Templates (Preview) を参照してください。
順序付けられたコレクション
詳細は、JEP 431: Sequenced Collections を参照してください。
世代別 Z Garbage Collector (ZGC)
詳細は、JEP 439: Generational ZGC を参照してください。
レコードパターン
詳細は、JEP 440: Record Patterns を参照してください。
スイッチのパターンマッチング
詳細は、JEP 441: Pattern Matching for switch を参照してください。
Foreign Function and Memory (FFM) API (3 番目のプレビュー)
詳細は、JEP 442: Foreign Function & Memory API (Third Preview) を参照してください。
名前のないパターンと変数 (プレビュー機能)
詳細は、JEP 443: Unnamed Patterns and Variables (Preview) を参照してください。
仮想スレッド
詳細は、JEP 444: Virtual Threads を参照してください。
名前のないクラスとインスタンスのメインメソッド (プレビュー機能)
詳細は、JEP 445: Unnamed Classes and Instance Main Methods (Preview) を参照してください。
スコープ付きの値 (プレビュー)
詳細は、JEP 446: Scoped Values (Preview) を参照してください。
Vector API (6 番目のインキュベーター)
詳細は、JEP 448: Vector API (Sixth Incubator) を参照してください。
キーのカプセル化メカニズム API
詳細は、JEP 452: Key Encapsulation Mechanism API を参照してください。
構造化された同時実行 (プレビュー機能)
詳細は、JEP 453: Structured Concurrency (Preview) を参照してください。

第6章 Red Hat build of OpenJDK 21.0.1 のバグ修正

Red Hat build of OpenJDK 21.0.1 には、以下のバグ修正が含まれています。

有効な .zip ファイルで Invalid CEN header エラーを修正

Red Hat build of OpenJDK 21.0.0 では、.zip ファイルの ZIP64 フィールドに追加の検証チェックが導入されました (JDK-8302483)。ただし、これらの追加チェックにより、Invalid CEN header (invalid zip64 extra data field size) エラーメッセージを含む有効な .zip ファイルでの検証が失敗しました。

この問題を修正するために、Red Hat build of OpenJDK 21.0.1 は長さゼロヘッダーと、一部の ZIP64 作成ツールが生成する追加パディングをサポートします。

次のサードパーティーツールも、.ZIP ファイル形式仕様への準拠を強化するためのパッチをリリースしました。

  • Apache Commons Compress の Empty CEN Zip64 Extra Headers の修正が Commons Compress リリース 1.11 で修正されました
  • Ant 1.10.14 で修正された空の CEN Zip64 追加ヘッダーに対する Apache Ant の修正
  • 無効な追加ヘッダーの書き込みに関する BND の問題は BND 5.3 で修正されました

    注記

    maven-bundle-plugin 5.1.5 には、BND 5.3 パッチが含まれています。

これらの改善された検証チェックにより、デプロイメントされた ZIP または JAR ファイルに問題が発生する場合は、ファイルがどのように作成されたか、および問題を解決するためのパッチが生成ソフトウェアから利用可能かどうかを確認してください。Red Hat build of OpenJDK 21.0.0 以降では、jdk.util.zip.disableZip64ExtraFieldValidation システムプロパティーを true に設定すると、これらのチェックを無効にできます。

JDK-8313765 (JDK バグシステム) を参照してください。

VM ハンドシェイクがメモリー上で停止した場合に、世代別 ZGC の使用時に JVM がハングする可能性がある潜在的なデッドロックを修正

Red Hat build of OpenJDK 21.0.0 では、次の状況がすべて同時に発生すると、JVM がハングする可能性があります。

  • JVM のヒープメモリーが不足していました。
  • ガベージコレクター (GC) は、メモリーを再利用するための再配置フェーズを開始したところです。
  • JVM スレッドローカルハンドシェイクがオブジェクトの再配置を要求していました。

Red Hat build of OpenJDK 21.0.0 には、この潜在的なデッドロックを回避するための修正が導入されています。

JDK-8311981 (JDK Bug System) を参照してください。

先読みと後読みを含む正規表現パターンで java.util.regex.MatchResult によってスローされる潜在的な例外を修正

Red Hat build of OpenJDK 21.0.0 では、Matcher$ImmutableMatchResult でネストされたクラス (JDK-8132995) の最適化により、java.util.regex.Matcher.toMatchResult() によって返されたインスタンスを使用するときに意図しない回帰が発生しました。この回帰は、グループを含む先読みアサーションと後読みアサーションを含む java.util.regex.Pattern クラスで発生しました。これらのグループが一致の範囲外にある場合、これらのグループにアクセスするときに java.util.regex.MatchResultStringIndexOutOfBoundsException をスローしました。

Red Hat build of OpenJDK 21.0.1 では、一致結果の一部として最小開始位置を計算し、String オブジェクトを構築するときに最初の一致の位置ではなくこの最小開始位置を使用することで、この問題を解決します。

JDK-8312976 (JDK Bug System) を参照してください。

Certigna ルート CA 証明書の追加

Red Hat build of OpenJDK 21.0.1 では、cacerts トラストストアに Certigna ルート証明書が含まれています。

  • 名前: Certigna (Dhimyotis)
  • エイリアス名: certignarootca
  • 識別名: CN=Certigna Root CA、OU=0002 48146308100036、O=Dhimyotis、C=FR

JDK-8314960 (JDK Bug System) を参照してください。

jdk.jar.maxSignatureFileSize システムプロパティーのデフォルト値の増加

Red Hat build of OpenJDK 21.0.0 では、Java アーカイブ (JAR) ファイルで署名関連のファイルに許可される最大バイト数を設定するための jdk.jar.maxSignatureFileSize システムプロパティーが導入されました JDK-8300596)。デフォルトでは、jdk.jar.maxSignatureFileSize プロパティーは 8000000 バイト (8 MB) に設定され、一部の JAR ファイルでは小さすぎていました。

Red Hat build of OpenJDK 21.0.1 では、jdk.jar.maxSignatureFileSize プロパティーのデフォルト値が 16000000 バイト (16 MB) に増加します。

JDK-8312489 (JDK Bug System) を参照してください。

第7章 このリリースに関連するアドバイザリー

このリリースに含まれるバグ修正と CVE 修正を文書化するために、次のアドバイザリーが発行されます。

改訂日時: 2024-05-10

法律上の通知

Copyright © 2024 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.
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.