Red Hat build of Quarkus 3.15 へのアプリケーションの移行


Red Hat build of Quarkus 3.15

Red Hat Customer Content Services

概要

このガイドでは、Red Hat build of Quarkus の以前のバージョンから現行バージョンにアプリケーションを移行する方法を説明します。

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

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

手順

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

第1章 Red Hat build of Quarkus 3.15 へのアプリケーションの移行

アプリケーション開発者は、quarkus CLI または Maven を使用して、Red Hat build of Quarkus バージョン 3.2 以降をベースとするアプリケーションをバージョン 3.15 に移行できます。

重要

Quarkus CLI は、Quarkus プロジェクトの作成、更新、ビルドなどのタスクを含む開発目的で使用されます。Red Hat は、実稼働環境での Quarkus CLI の使用をサポートしていません。

1.1. プロジェクトを Red Hat build of Quarkus の最新バージョンに更新する

Red Hat build of Quarkus プロジェクトを最新バージョンに更新するには、このガイドの後半で詳しく説明する次の手順に従います。

  1. quarkus CLI または Maven コマンドを使用して、自動更新タスクを実行します。
  2. 以前のバージョンとの互換性に影響を与える変更 セクションを参照して、手動更新タスクを実行します。

1.1.1. 自動更新

quarkus CLI または Maven コマンドを実行すると、プロジェクトの依存関係とソースコードをアップグレードする OpenRewrite レシピがトリガーされます。この自動化されたアプローチにより、信頼性の高い便利な方法でプロジェクトを更新できます。

ただし、すべての移行タスクが自動化されるわけではありません。quarkus update コマンドまたは Maven の同等のコマンドを実行しても、特定の更新が適用されない場合は、次の理由が考えられます。

  • 必要な移行タスクが利用可能な OpenRewrite レシピの対象外である。
  • プロジェクトが依存するエクステンションと Red Hat build of Quarkus の最新バージョンの間に互換性がない。

1.1.2. 手動更新

手動更新では、あらゆる移行タスクに対応する柔軟性と制御性が得られ、プロジェクトを特定のニーズに合わせて調整できます。自動化されていないタスクは手動で処理する必要があります。

以前のリリースからこのリリースに更新するために必要な移行タスクのリストは、このガイドの 以前のバージョンとの互換性に影響を与える変更 セクションを参照してください。

アプリケーションプロジェクトの現在のバージョンからアップグレード先のバージョンまでの間にリリースされた各バージョンの移行ガイドを確認することが重要です。この確認作業により、更新プロセスについて十分な情報が得られ、準備が整います。たとえば、バージョン 3.8 から 3.15 にアップグレードする場合は、このガイドを確認するだけで済みます。バージョン 3.2 から 3.15 にアップグレードする場合は、このガイドの中間バージョン Red Hat build of Quarkus 3.8 へのアプリケーションの移行 ガイドも確認する必要があります。

この移行ガイドの各タスクで、必要な変更の概要を示し、その変更が quarkus update コマンドとそれに相当する Maven によって自動的に処理されるかどうかを示します。

その他の背景情報は、Quarkus コミュニティーの Migration guides を参照してください。

1.2. quarkus CLI を使用したプロジェクトの更新

quarkus CLI を使用して Red Hat build of Quarkus プロジェクトを更新します。

重要

Quarkus CLI は、Quarkus プロジェクトの作成、更新、ビルドなどのタスクを含む開発目的で使用されます。Red Hat は、実稼働環境での Quarkus CLI の使用をサポートしていません。

前提条件

手順

  1. バージョン管理システムでプロジェクトの作業ブランチを作成します。
  2. インストールガイド に従って、最新バージョンの quarkus CLI をインストールします。
  3. 次のコマンドを実行して、インストールを確認します。

    quarkus -v
    3.15.6
    Copy to Clipboard Toggle word wrap
  4. 重要: 「Red Hat build of Quarkus スタートガイド」の Red Hat build of Quarkus エクステンションレジストリークライアントの設定 セクションの手順に従って、エクステンションレジストリークライアントを設定します。
  5. ターミナルで、プロジェクトディレクトリーに移動します。
  6. プロジェクトを更新します。

    quarkus update
    Copy to Clipboard Toggle word wrap

    オプション: 特定のストリームに更新するには、--stream オプションを使用し、それに続けて特定のバージョンを指定します。次に例を示します。

    quarkus update --stream=3.15
    Copy to Clipboard Toggle word wrap
  7. 更新コマンドの出力で指示を確認し、推奨されるタスクを実行します。
  8. 差分ツールを使用して、更新プロセス中に行われたすべての変更を調べます。
  9. プロジェクトの更新によって処理されなかった変更を手動で実行します。詳細は、以下の 以前のバージョンとの互換性に影響を与える変更 セクションを参照してください。
  10. 実稼働環境にデプロイする前に、プロジェクトがエラーなくビルドされ、すべてのテストに合格し、アプリケーションが期待どおりに機能することを確認します。

1.3. Maven を使用したプロジェクトの更新

Maven を使用して Red Hat build of Quarkus プロジェクトを更新します。

前提条件

手順

  1. バージョン管理システムでプロジェクトの作業ブランチを作成します。
  2. 重要: 「Red Hat build of Quarkus スタートガイド」の Red Hat build of Quarkus エクステンションレジストリークライアントの設定 セクションに記載されているように、エクステンションレジストリークライアントを設定します。
  3. ターミナルを開き、プロジェクトディレクトリーに移動します。
  4. Red Hat build of Quarkus Maven プラグインのバージョンが、サポートされている最新バージョンと一致していることを確認します。Red Hat build of Quarkus スタートガイド に従ってプロジェクトを設定し、次を実行します。

    mvn com.redhat.quarkus.platform:quarkus-maven-plugin:3.15.6.redhat-00002:update
    Copy to Clipboard Toggle word wrap

    オプション: 特定のストリームに更新するには、-Dstream オプションを使用し、それに続けて目的のバージョンを指定します。次に例を示します。

    mvn com.redhat.quarkus.platform:quarkus-maven-plugin:3.15.6.redhat-00002:update -Dstream=3.15
    Copy to Clipboard Toggle word wrap
  5. 更新コマンドの出力で指示を確認し、推奨されるタスクを実行します。
  6. 差分ツールを使用して、更新プロセス中に行われたすべての変更を調べます。
  7. プロジェクトの更新によって処理されなかった変更を手動で実行します。詳細は、以下の 以前のバージョンとの互換性に影響を与える変更 セクションを参照してください。
  8. 実稼働環境にデプロイする前に、プロジェクトがエラーなくビルドされ、すべてのテストに合格し、アプリケーションが期待どおりに機能することを確認します。

1.4. 以前のバージョンとの互換性に影響を与える変更

このセクションでは、以前の製品バージョンでビルドされたアプリケーションの互換性に影響を与える、Red Hat build of Quarkus 3.15 の変更点を説明します。

これらの重大な変更を確認し、アプリケーションを Red Hat build of Quarkus 3.15 に更新した後もアプリケーションが引き続き機能するように必要な手順を実行してください。

このセクションに記載されている更新の多くは、quarkus update または同等の Maven コマンドで実行できます。これにより、プロジェクトの依存関係とソースコードを Red Hat build of Quarkus の最新バージョンに更新する自動 OpenRewrite レシピがトリガーされます。

ただし、すべての移行タスクが自動化されるわけではありません。自動更新によって特定の更新が適用されない場合は、必要な移行タスクが利用可能な OpenRewrite レシピの対象外であるか、プロジェクトが依存するエクステンションと最新バージョンの間に互換性がないことが原因である可能性があります。このような場合は、手動で更新を実行する必要があります。手動の移行タスクを特定して対処するには、次の項目を必ず確認してください。

1.4.1. 互換性

1.4.1.1. Spring 互換性レイヤーが Spring Boot 3 に合わせて更新される

Red Hat build of Quarkus 3.15 では、最新の Spring Boot 3 API 更新に合わせて quarkus-spring-data-rest-extension がアップグレードされました。

コード内で PagingAndSortingRepository インターフェイスを使用している場合、このアップグレードによって重大な変更が発生する可能性があります。以前は、PagingAndSortingRepositoryCrudRepository を拡張し、カスタムリポジトリーが CrudRepository からメソッドを継承できるようにしていました。

この変更に関連する問題を解決するには、カスタムリポジトリーを更新して、ListCrudRepository または CrudRepository のいずれかを直接拡張する必要があります。この調整により、必要なメソッドへの継続的なアクセスが確保され、更新されたアーキテクチャーとの互換性が維持されます。

1.4.2. コア

1.4.2.1. Dev Services の起動検出の変更

Red Hat build of Quarkus 3.15 では、Dev Services を起動するかどうかを決定する方法が変更されました。

以前は、Dev Services を起動するかを決定するために、Red Hat build of Quarkus は、設定プロパティーが拡張せずに定義されているかをチェックしていました。ただし、この方法では、プロパティーが空の値に展開された場合に問題が発生しました。

現在、Red Hat build of Quarkus は、展開されたプロパティーが空かどうかを最初にチェックします。この変更により、展開されたプロパティーが空になった場合に、以前は起動しなかった Dev Services が予期せず起動する可能性があります。ほとんどの Dev Services は、JDBC URL などの特定のプロパティーが提供されていないときに開始されます。

この変更により、展開されたプロパティーが空にならないように、設定プロパティーを調整してデフォルト値を含める必要があります。

たとえば、quarkus-test-oidc-server コンポーネントを使用して OpenID Connect (OIDC) サーバーをモックし、application.properties ファイルに次の内容が含まれている場合:

%test.quarkus.oidc.auth-server-url=${keycloak.url}/realms/quarkus/
Copy to Clipboard Toggle word wrap

プロパティー値を次のように変更します。

%test.quarkus.oidc.auth-server-url=${keycloak.url:replaced-by-test-resource}/realms/quarkus/
Copy to Clipboard Toggle word wrap

このように、keycloak.url が定義されていない場合、デフォルトの replaced-by-test-resource 値により、プロパティーが空の値に拡張されることが防止され、Dev Services が意図せず起動することが回避されます。式で変数が定義されていない場合、式全体が空になります。

注記

この特定の例では、quarkus update を実行することでこの変更が自動的に適用されます。ただし、他のユースケースでは、変更を手動で適用する必要がある場合があります。

1.4.2.2. GraalVM SDK の更新

Red Hat build of Quarkus 3.15 では、GraalVM SDK の依存関係がバージョン 23.1.2 に更新され、以前の見落としが修正され、最新の GraalVM 機能との互換性が確保されています。

GraalVM の代替を使用してエクステンションを開発する場合は、org.graalvm.sdk:graal-sdk 依存関係を org.graalvm.sdk:nativeimage に置き換えます。nativeimage アーティファクトには置換に必要なクラスのみが含まれるため、より合理化されます。

この変更を適用するには、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドに記載されている自動更新を実行します。

重要

JDK 17 の要件: GraalVM SDK 23.1.2 では、実行時に最低でも JDK 17 が必要です。

1.4.2.3. Infinispan 15 コンポーネントのアップグレード

Red Hat build of Quarkus 3.15 では、Infinispan 15 コンポーネントがバージョン 15.0 にアップグレードされます。

以前のリリースでは、Infinispan 15 インテグレーションより前は、次の .Query.java コードを使用してクエリーを実行していました。

@Inject
RemoteCache<String, Book> booksCache;

…

QueryFactory queryFactory = Search.getQueryFactory(booksCache);
Query query = queryFactory.create("from book_sample.Book");
List<Book> list = query.execute().list();
Copy to Clipboard Toggle word wrap

ただし、このリリースでは、RemoteCache@ApplicationScoped プロキシー Bean になり、Search.getQueryFactory によって ClassCastException が発生するため、このコードは機能しなくなりました。

これを解決するには、次のように RemoteCache API の query メソッドを使用して間接参照を削除します。

@Inject
RemoteCache<String, Book> booksCache;

…

Query<Book> query = booksCache.<Book>query("from book_sample.Book");
List<Book> list = query.execute().list();
Copy to Clipboard Toggle word wrap

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.2.4. パッケージ設定の変更

Red Hat build of Quarkus 3.15 では、次のパッケージ関連のプロパティーが改名または変更されました。設定で元のプロパティーを使用した場合、それらは引き続き機能しますが、警告が表示されます。

この変更を適用するには、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドに記載されている自動更新を実行します。

Expand
表1.1 設定内の次のプロパティーを更新する
元の名前現在の名前

quarkus.package.type

JAR ビルドの場合は、有効な JAR タイプ (fast-jaruber-jarmutable-jar、または legacy-jar (非推奨)) を指定した quarkus.package.jar.type を使用します。ネイティブビルドの場合は、quarkus.native.enabledtrue に設定します。ネイティブソースビルドの場合は、quarkus.native.sources-onlytrue に設定します。quarkus.package.jar.enabledfalse に設定して、JAR ビルドを無効にすることもできます。

quarkus.package.create-appcds

quarkus.package.jar.appcds.enabled

quarkus.package.appcds-builder-image

quarkus.package.jar.appcds.builder-image

quarkus.package.appcds-use-container

quarkus.package.jar.appcds.use-container

quarkus.package.compress-jar

quarkus.package.jar.compress

quarkus.package.filter-optional-dependencies

quarkus.package.jar.filter-optional-dependencies

quarkus.package.add-runner-suffix

quarkus.package.jar.add-runner-suffix

注記: この設定プロパティーは通常、uber-JAR をビルドする場合にのみ適用されます。

quarkus.package.user-configured-ignored-entries

quarkus.package.jar.user-configured-ignored-entries

quarkus.package.user-providers-directory

quarkus.package.jar.user-providers-directory

quarkus.package.included-optional-dependencies

quarkus.package.jar.included-optional-dependencies

quarkus.package.include-dependency-list

quarkus.package.jar.include-dependency-list

quarkus.package.decompiler.versionquarkus.package.vineflower.version

代替はありません。これらのプロパティーは無視されるようになりました。

quarkus.package.decompiler.enabledquarkus.package.vineflower.enabled

quarkus.package.jar.decompiler.enabled

quarkus.package.decompiler.jar-directoryquarkus.package.vineflower.jar-directory

quarkus.package.jar.decompiler.jar-directory

quarkus.package.manifest.attributes.*

quarkus.package.jar.manifest.attributes.*

quarkus.package.manifest.sections.*.*

quarkus.package.jar.manifest.sections.*.*

quarkus.package.manifest.add-implementation-entries

quarkus.package.jar.manifest.add-implementation-entries

これらの変更を反映し、ビルドプロセス中の警告メッセージを停止するために、コードファイルと設定ファイルを更新します。

1.4.2.5. ProfileManager と ProfileManager#getActiveProfile が削除される

Red Hat build of Quarkus 3.15 では、ProfileManager が複数のプロファイルを処理しなかったため、非推奨の ProfileManager クラスと ProfileManager#getActiveProfile メソッドが削除されました。

この削除により、次の設定変更が必要になります。

アクティブなプロファイルを取得するには、io.quarkus.runtime.configuration.ConfigUtils#getProfiles API を使用します。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.2.6. quarkus-app ディレクトリーは fast-jar パッケージ用にのみ作成されるようになる

以前のリリースでは、生成されるアーティファクトの種類に関係なく、ビルドシステムの出力ディレクトリーに quarkus-app ディレクトリーが常に生成されるという意図しない動作が確認されました。

Red Hat build of Quarkus 3.15 では、ビルドプロセスによって、デフォルトのアーティファクトタイプである fast-jar パッケージに対してのみ quarkus-app ディレクトリーが作成されます。別のアーティファクトタイプ用にビルドを設定すると、quarkus-app ディレクトリーは作成されません。

1.4.2.7. エクステンション開発者に必要な調整

Red Hat build of Quarkus 3.15 では、ランタイムファイルと設定ドキュメントの生成に使用されるエクステンションアノテーションプロセッサーが再開発され、柔軟性が向上しましたが、新しい制約が追加されました。

  • 同じモジュール内で従来の @ConfigRoot と新しい @ConfigMapping アプローチを混在させることは許可されなくなりました。@ConfigMapping のみを使用する場合は、何も変更する必要はありません。
  • 従来の @ConfigRoot の場合は、maven-compiler-plugin 設定に以下を追加して、アノテーションプロセッサーに通知します。

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <annotationProcessorPaths>
                <path>
                    <groupId>io.quarkus</groupId>
                    <artifactId>quarkus-extension-processor</artifactId>
                    <version>${quarkus.version}</version>
                </path>
            </annotationProcessorPaths>
            <compilerArgs>
                <arg>-AlegacyConfigRoot=true</arg>
            </compilerArgs>
        </configuration>
    </plugin>
    Copy to Clipboard Toggle word wrap

    テストクラスに設定アノテーションが存在しない場合、このフラグはテストクラスのコンパイル時に警告をトリガーできます。これを回避するには、default-compile 実行に対してのみアノテーションプロセッサーを有効にします。

    <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <executions>
            <execution>
                <id>default-compile</id>
                <configuration>
                    <annotationProcessorPaths>
                        <path>
                            <groupId>io.quarkus</groupId>
                            <artifactId>quarkus-extension-processor</artifactId>
                            <version>${quarkus.version}</version>
                        </path>
                    </annotationProcessorPaths>
                    <compilerArgs>
                        <arg>-AlegacyConfigRoot=true</arg>
                    </compilerArgs>
                </configuration>
            </execution>
        </executions>
    </plugin>
    Copy to Clipboard Toggle word wrap

新しい @ConfigMapping インターフェイスへの移行が推奨されますが、スムーズな移行を確実にするために、従来の @ConfigRoot クラスのサポートもしばらく継続される予定です。非推奨化の予定は、後日発表される予定です。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.3. データ

1.4.3.1. 起動時にデータベースのバージョンが検証される

Red Hat build of Quarkus 3.15 では、Hibernate ORM エクステンションは、実行時に接続するデータベースバージョンが、ビルド時に設定されたバージョン以上であることを確認します。この検証は、設定が Red Hat build of Quarkus でサポートされている最小データベースバージョンをターゲットとするデフォルト設定に依存している場合でも実行されます。

この更新の目的は、Hibernate ORM または Red Hat build of Quarkus がサポートしなくなったデータベースバージョンを使用しようとした場合に、アプリケーション開発者に警告することです。サポートされなくなったデータベースバージョンを使用しようとすると、Red Hat build of Quarkus は起動せず、例外がスローされます。

この変更は、次のデータベースバージョンに依存するアプリケーションに影響します。

  • DB2 10.5 より前のバージョン
  • バージョン 10.15.2 より前の Derby
  • バージョン 19.0 より前の Oracle データベース
  • MariaDB バージョン 10.6 より前
  • Microsoft SQL Server バージョン 13 (2016) より前
  • MySQL バージョン 8.0 より前
  • PostgreSQL バージョン 12.0 より前

データベースをサポートされているバージョンにアップグレードできない場合でも、一部の機能が動作しない可能性がありますが、引き続き使用してみることはできます。以前のサポートされていないデータベースバージョンを引き続き使用するには、db-version を明示的に設定し、必要に応じて dialect も設定します。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

詳細は、以下の資料を参照してください。

1.4.3.2. Dev Services のデフォルトイメージの更新

Red Hat build of Quarkus 3.15 では、いくつかの Dev Services のデフォルトイメージが次のバージョンに更新されました。

  • PostgreSQL バージョン 16
  • MySQL バージョン 8.4
  • MongoDB バージョン 7.0
  • Elasticsearch バージョン 8.15
  • OpenSearch バージョン 2.16

この変更を適用するには、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドに記載されている自動更新を実行します。

これらのサービスの特定のバージョンまたはディストリビューションを使用するには、アプリケーションプロパティーでデフォルトのコンテナーイメージを手動でオーバーライドする必要があります。

詳細は、Quarkus の「Dev Services for Elasticsearch」ガイドの イメージの設定 セクションを参照してください。

1.4.3.3. Hibernate ORM auto-flush 最適化

Red Hat build of Quarkus 3.15 では、Hibernate Object/Relational Mapping (ORM) auto-flush 機能が最適化されています。

現在、デフォルトでは、Hibernate Query Language (HQL)、Java Persistence Query Language (JPQL)、またはネイティブクエリーを実行する前に、これらの変更がクエリー結果に影響を及ぼす可能性があることを検出した場合、Hibernate ORM は保留中の変更のみをデータベースにフラッシュします。

ほとんどの場合、この最適化により、バッチ処理の効率化など、アプリケーションのパフォーマンスが向上しますが、次の問題が発生する可能性があります。

  • ネイティブクエリーを実行している場合、自動フラッシュでは、クエリーで関連するエンティティータイプを指定する必要があります。詳細は、Hibernate ORM ユーザーガイド を参照してください。
  • 保留中の変更がクエリーで使用される外部キーのターゲットテーブルにのみ影響するが、それらのターゲットテーブルがクエリーで使用されていない場合、自動フラッシュは行われません。

以前の動作に戻して別のデフォルト値を選択する場合は、quarkus.hibernate-orm.flush.mode 設定プロパティーが導入されています。このプロパティーを always に設定します: quarkus.hibernate-orm.flush.mode=always

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

詳細は、以下の資料を参照してください。

1.4.3.4. Hibernate ORM のバージョン 6.6 へのアップグレード

Red Hat build of Quarkus 3.15 では、Hibernate ORM エクステンションが Hibernate ORM 6.6 にアップグレードされ、次の重大な変更が導入されました。

  • 特定の形式の不適切な設定、マッピング、またはクエリーを持つアプリケーションでも例外がスローされる可能性があります。以前は、警告を出すか、誤動作するだけでした。以下に例を示します。

    • @GeneratedValue 識別子または null 以外の値に設定された @Version プロパティーを持つエンティティーをマージするときに、無効な作成試行が失敗するようになりました。以前は、データベースにエンティティーを作成していました。詳細は、Merge versioned entity when row is deleted を参照してください。
    • 同じタイプに @MappedSuperclass@Embeddable の両方を適用することはできなくなりました。詳細は、Explicit validation of annotated class types を参照してください。
  • 予期しない動作を回避するために、一部の機能がデフォルトで有効になっています。たとえば、@Embeddable アノテーションが付けられたサブタイプを持つ Embeddable は、デフォルトで識別子ベースの継承を使用するようになりました。詳細は、Discriminator-based embeddable inheritance のリンクを参照してください。
  • 場合によっては、Java Persistence API (JPA) 仕様に準拠するように動作が変更されました。詳細は、Criteria:jakarta.persistence.criteria.Expression#as(Class) を参照してください。

詳細は、以下の資料を参照してください。

quarkus-hibernate-search-orm-outbox-polling エクステンションは、Hibernate ORM が接続するデータベース内のシステムテーブルに依存しており、Red Hat build of Quarkus 3.15 では、これらのシステムテーブルのスキーマが変更される可能性があります。

このエクステンションを使用する場合は、データベーススキーマを移行する必要があります。データベーススキーマを移行する方法は、"Hibernate Search migration" ガイドの Outbox polling database tables セクションを参照してください。

データベーススキーマを更新できない場合は、次の設定を適用して以前のデフォルトを復元します。

  • デフォルトの永続性ユニットの場合は、以下を指定します。

    • quarkus.hibernate-search-orm.coordination.entity-mapping.agent.uuid-type=char
    • quarkus.hibernate-search-orm.coordination.entity-mapping.outbox-event.uuid-type=char
  • 名前付き永続性ユニットの場合は、以下を指定します。

    • quarkus.hibernate-search-orm.<persistence-unit-name>.coordination.entity-mapping.agent.uuid-type=char
    • quarkus.hibernate-search-orm.<persistence-unit-name>.coordination.entity-mapping.outbox-event.uuid-type=char

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.3.6. Hibernate ORM、Hibernate Reactive、MongoDB の Panache アノテーションプロセッサーが削除される

Red Hat build of Quarkus 3.15 では、Hibernate ORM with Panache、Hibernate Reactive with Panache、または MongoDB with Panache を使用する場合、外部定義エンティティーに io.quarkus:quarkus-panache-common アノテーションプロセッサーが不要になったため、削除されました。

以前のリリースでは、このアノテーションプロセッサーはクラスパスで見つかったときに自動的に実行されていました。ビルドツールでアノテーションプロセッサーのセットをオーバーライドした場合は、明示的に追加する必要がありました。

アノテーションプロセッサーリストから io.quarkus:quarkus-panache-common へのすべての参照を削除します。

この変更を適用するには、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドに記載されている自動更新を実行します。

Maven ユーザー

pom.xml ファイルから io.quarkus:quarkus-panache-common アノテーションプロセッサーを見つけて削除します。

<build>
    <plugins>
        <!-- other plugins -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.13.0</version> <!-- Necessary for proper dependency management in annotationProcessorPaths -->
            <configuration>
                <annotationProcessorPaths>
                    <path>
                        <groupId>io.quarkus</groupId>
                        <artifactId>quarkus-panache-common</artifactId>
                    </path>
                </annotationProcessorPaths>
            </configuration>
        </plugin>
        <!-- other plugins -->
    </plugins>
</build>
Copy to Clipboard Toggle word wrap

Gradle ユーザー

Gradle ビルドの場合は、build.gradle ファイルから io.quarkus:quarkus-panache-common アノテーションプロセッサーを見つけて削除します。

dependencies {
    annotationProcessor "io.quarkus:quarkus-panache-common"
}
Copy to Clipboard Toggle word wrap

1.4.4. メッセージング

1.4.4.1. Quarkus メッセージングの同期メソッドの実行モードの変更

Red Hat build of Quarkus 3.15 では、Quarkus メッセージングエクステンションの 同期メソッド の実行モードがデフォルトでワーカースレッドに設定されるようになりました。以前のバージョンでは、これらのメソッドは Vert.x イベントループ (I/O スレッド) で実行されていました。

たとえば、次の処理メソッドは、Vert.x I/O スレッドではなくワーカースレッドでデフォルトで呼び出されるようになりました。

package org.acme;

import org.eclipse.microprofile.reactive.messaging.Incoming;
import org.eclipse.microprofile.reactive.messaging.Outgoing;

@Incoming("source")
@Outgoing("sink")
public Result process(int payload) {
    return new Result(payload);
}
Copy to Clipboard Toggle word wrap

以前の動作に戻すには、quarkus.messaging.blocking.signatures.execution.mode 設定プロパティーを使用できます。

可能な値は次のとおりです。

  • worker (デフォルト)
  • event-loop (以前の動作)
  • virtual-thread

@Blocking および @NonBlocking アノテーションを使用して、メソッドごとに実行モードを調整することもできます。

package org.acme;

import io.smallrye.common.annotation.NonBlocking;
import org.eclipse.microprofile.reactive.messaging.Incoming;

@Incoming("source")
@NonBlocking
public void consume(int payload) {
    // called on I/O thread
}
Copy to Clipboard Toggle word wrap

メソッドに @NonBlocking アノテーションを付けることで、そのメソッドが Vert.x イベントループ (I/O スレッド) で呼び出されるようになります。

メッセージングメソッドを確認して、必要な実行モードで実行されることを確認し、必要に応じてコードまたは設定を更新します。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.4.2. SmallRye Reactive Messaging エクステンションの名前が Quarkus Messaging に変更される

Red Hat build of Quarku 3.15 では、SmallRye Reactive Messaging エクステンションの名前が quarkus-messaging-* に変更され、リアクティブワークロードとブロッキングワークロードの両方をサポートしていることが反映されています。

Maven の再配置が実装されました。この変更を適用するには、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドに記載されている自動更新を実行します。

プロジェクト内の古いエクステンション名のすべてのインスタンスを新しい名前に置き換えます。

名前を変更したエクステンション

以下のエクステンションの名前が変更されました。

Expand
以前の名前新しい名前

quarkus-smallrye-reactive-messaging

quarkus-messaging

quarkus-smallrye-reactive-messaging-amqp

quarkus-messaging-amqp

quarkus-smallrye-reactive-messaging-kafka

quarkus-messaging-kafka

quarkus-smallrye-reactive-messaging-mqtt

quarkus-messaging-mqtt

quarkus-smallrye-reactive-messaging-pulsar

quarkus-messaging-pulsar

quarkus-smallrye-reactive-messaging-rabbitmq

quarkus-messaging-rabbitmq

設定ルートも quarkus.smallrye-reactive-messaging. から quarkus.messaging. に更新されました。必要に応じて、古い設定プロパティーに戻すための自動フォールバックメカニズムが用意されています。

エクステンション開発者への影響

エクステンション開発者の場合は、次のデプロイメント関連のアーティファクトも名前が変更されていることに注意してください。

Expand
以前の名前新しい名前

quarkus-smallrye-reactive-messaging-deployment

quarkus-messaging-deployment

quarkus-smallrye-reactive-messaging-kotlin

quarkus-messaging-kotlin

quarkus-smallrye-reactive-messaging-amqp-deployment

quarkus-messaging-amqp-deployment

quarkus-smallrye-reactive-messaging-kafka-deployment

quarkus-messaging-kafka-deployment

quarkus-smallrye-reactive-messaging-mqtt-deployment

quarkus-messaging-mqtt-deployment

quarkus-smallrye-reactive-messaging-pulsar-deployment

quarkus-messaging-pulsar-deployment

quarkus-smallrye-reactive-messaging-rabbitmq-deployment

quarkus-messaging-rabbitmq-deployment

これらの変更を反映するようにコードと設定を更新します。

1.4.5. 可観測性

1.4.5.1. すべての quarkus.opentelemetry.* 設定プロパティーが削除される

Red Hat build of Quarkus 3.15 では、quarkus.opentelemetry.* namespace の下にあるすべての設定プロパティーが削除されました。

これらのプロパティーは非推奨となり、バージョン 3.2 および 3.8 では下位互換性のために維持されています。これらは 3.15 で削除されたため、アプリケーションを移行するには次の変更を行う必要があります。

  • quarkus.opentelemetry. namespace のすべてのプロパティーを quarkus.otel. namespace に更新して、OpenTelemetry Java 自動設定規則 に合わせます。
  • サンプラープロパティーを quarkus.opentelemetry.tracer.sampler から quarkus.otel.traces.sampler に更新します。
  • parent-based のサンプラープロパティー quarkus.opentelemetry.tracer.sampler.parent-based が削除されました。サンプラーを親ベースとしてマークするには、以下に示すように、quarkus.otel.traces.sampler プロパティーで直接指定します。
Expand
表1.2 元のサンプラー設定から新しいサンプラー設定への値のマッピング
古い値新しい値新しい値 (親ベース)

on

always_on

parentbased_always_on

off

always_off

parentbased_always_off

ratio

traceidratio

parentbased_traceidratio

これらの新しいプロパティーと値を使用するには、コードと設定を更新します。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.5.2. OpenTelemetry io.opentelemetry.extension.annotations.WithSpan アノテーションが削除される

Red Hat build of Quarkus 3.15 では、非推奨のアノテーション io.opentelemetry.extension.annotations.WithSpan が削除されました。新しい io.opentelemetry.instrumentation.annotations.WithSpan アノテーションを使用するようにコードを更新します。

この更新との互換性を確保するために、古いアノテーションに依存する設定またはコードを確認して変更してください。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.5.3. OpenTelemetry における HTTP の新しいセマンティック規約

Red Hat build of Quarkus 3.15 では、OpenTelemetry (OTel) SDK がバージョン 1.39.0 に、計装がバージョン 2.5.0 にアップグレードされました。このアップグレードでは、OpenTelemetry HTTP semantic convention stability migration で定義された新しい規則が適用されます。また、非推奨の標準の削除も完了します。これらの規約に依存するコードまたは設定を更新します。

さらに、オプトインがサポートされなくなったため、quarkus.otel.semconv-stability.opt-in システムプロパティーは削除されました。このプロパティーに依存するコードまたは設定を更新します。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.5.4. OpenTelemetry REST クライアントのスパン名の変更

Red Hat build of Quarkus 3.15 では、OpenTelemetry (OTel) REST クライアントのスパン名に HTTP リクエストメソッドとパスの両方が含まれるようになりました (例: GET /hello)。以前の REST クライアントのスパン名には、HTTP メソッドのみが含まれていました。

REST クライアントスパンの特定の形式に依存するコードまたは設定を更新します。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.5.5. データベース操作によって生成された OpenTelemetry (OTel) スパン名が変更される

Red Hat build of Quarkus 3.15 では、使用するライブラリーの更新により、データベース操作によって生成されるスパン名が変更されました。

たとえば、この変更前は、データベーステーブルを作成するための古いスパン名は DB Query でした。この変更により、新しいスパン名は CREATE TABLE {table_name} になります。

この新しい命名規則により、実行される特定のデータベース操作を正確に反映する、より説明的で意味のあるスパン名が提供されます。

その結果、可観測性ツールでデータベース操作によって生成されたスパンに異なる名前が付けられていることに気付く場合があります。

新しい命名規則に対応するために、古いスパン名に依存するカスタムモニタリング設定、アラート、またはダッシュボードを確認して更新します。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

データベーススパンの命名規則とベストプラクティスの詳細は、OpenTelemetry Database Span Semantic Conventions の仕様を参照してください。

1.4.5.6. SmallRye ヘルス設定プロパティーの再配置

以前のバージョンでは、一部の設定プロパティーが quarkus.health 設定ルートの下に誤って配置されていました。

Red Hat build of Quarkus 3.15 では、一貫性を保つために、これらのプロパティーは quarkus.smallrye-health 設定ルートに再配置されました。

  • quarkus.health.extensions.enabled は、quarkus.smallrye-health.extensions.enabled に移動されました。
  • quarkus.health.openapi.included は、quarkus.smallrye-health.openapi.included に移動されました。

Red Hat build of Quarkus 3.15 では、古い設定ルートを持つプロパティーは非推奨となり、今後のリリースで削除される予定です。新しいプロパティーのロケーションを使用するようにコードまたは設定を更新します。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.6. セキュリティー

1.4.6.1. キーストアとトラストストアのデフォルト形式が変更される

Red Hat build of Quarkus 3.15 では、Java Keystroke (JKS) はデフォルトのキーストアおよびトラストストア形式ではなくなりました。

代わりに、Red Hat build of Quarkus は、次のようにファイル拡張子に基づいて形式を決定します。

  • .pem.crt.key ファイルは Privacy Enhanced Mail (PEM) 証明書とキーとして読み取られます。
  • .jks.keystore.truststore ファイルは JKS キーストアとトラストストアとして読み取られます。
  • .p12.pkcs12.pfx ファイルは PKCS12 キーストアとトラストストアとして読み取られます。

ファイルでこれらの拡張子のいずれも使用していない場合は、ファイル形式を設定する必要があります。

たとえば、JKS 形式を指定するには、次の設定値を設定します。

  • quarkus.http.ssl.certificate.key-store-file-type=JKS
  • quarkus.http.ssl.certificate.trust-store-file-type=JKS
注記

P12 または PEM 形式を指定するには、JKS の代わりに P12 または PEM を設定します。

1.4.6.2. UserInfo が注入されると OpenID Connect (OIDC) UserInfo の取得が強制される

Red Hat build of Quarkus 3.15 では、io.quarkus.oidc.UserInfo が REST エンドポイントに注入されると、quarkus.oidc.authentication.user-info-required プロパティーが自動的に true に設定されるようになりました。この変更により、UserInfo は通常、使用が意図されたときに注入されるため、このプロパティーを手動で設定する必要がなくなります。

ただし、複数の OIDC テナントがエンドポイントを保護し、一部のテナントが UserInfo をサポートしていない複雑なセットアップでは、この変更によりテナントの初期化が失敗する可能性があります。これは、UserInfo をサポートしていないテナントが UserInfo を取得するように設定されている場合にのみ発生し、そのテナントによって保護されたリクエストが失敗する可能性があります。

マルチテナントセットアップでこのような失敗を回避するには、UserInfo をサポートしていないテナントに対して、テナント固有の quarkus.oidc.<tenant-id>.authentication.user-info-required プロパティーを false に設定します。これにより、UserInfo をサポートするテナントのみがその取得を強制するようになります。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.7. ツール

1.4.7.1. JUnit Pioneer バージョンが強制されなくなる

Red Hat build of Quarkus 3.15 では、Quarkus BOM は org.junit-pioneer:junit-pioneer 依存関係のバージョンを強制しなくなりました。プロジェクトでこの依存関係を使用している場合は、ビルドファイルでそのバージョンを明示的に指定する必要があります。

ビルドの問題を回避するには、pom.xml または build.gradle ファイルでバージョンを定義します。次に例を示します。

pom.xml

<properties>
    ...
    <junit-pioneer.version>2.2.0</junit-pioneer.version>
    ...
</properties>
Copy to Clipboard Toggle word wrap

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.8. Web

1.4.8.2. 非 REST パス上の Quarkus REST フィルター

以前のリリースでは、要求されたリソースが REST リソースでない場合でも、Quarkus REST (旧称 RESTEasy Reactive) フィルターが実行されていました。Red Hat build of Quarkus 3.15 では、その動作が変更されました。現在、Quarkus REST フィルターは REST リソースでのみ実行されます。

注記

Quarkus REST は、Quarkus の共通 Vert.x レイヤーで動作するようにゼロから構築された Jakarta REST (旧称 JAX-RS) 実装です。完全にリアクティブであり、ビルド時の処理に高度に最適化されています。

フィルターを Quarkus 以外の REST リソースに適用する必要がある場合は、次の例に示すように、NotFoundException のカスタム ExceptionMapper を追加することで適用できます。

package io.quarkus.resteasy.reactive.server.test.customproviders;

import jakarta.ws.rs.NotFoundException;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.ext.ExceptionMapper;
import jakarta.ws.rs.ext.Provider;

@Provider
public class NotFoundExeptionMapper implements ExceptionMapper<NotFoundException> {
    @Override
    public Response toResponse(NotFoundException exception) {
        return Response.status(404).build();
    }
}
Copy to Clipboard Toggle word wrap

この ExceptionMapper を使用すると、Quarkus REST は "Not Found" リソースを処理し、フィルターが期待どおりに実行されるようになります。以前は、フィルターは常に非 REST リソースで実行されていたため、他のエクステンションが "Not Found" シナリオを効果的に処理することが困難でした。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.8.3. Qute REST インテグレーションの更新: TemplateInstance はデフォルトでブロックされる

Red Hat build of Quarkus 3.15 では、io.quarkus.qute.TemplateInstance クラスは非ブロッキング型として登録されなくなりました。その結果、Jakarta REST (旧称 JAX-RS) リソースメソッドが TemplateInstance オブジェクトを返す場合、デフォルトでブロッキングと見なされるようになりました。

以前の非ブロッキング動作を復元するには、リソースメソッドに @io.smallrye.common.annotation.NonBlocking アノテーションを適用します。

注記

この変更は、Quarkus REST (旧称 RESTEasy Reactive) エクステンション quarkus-rest を使用するアプリケーションにのみ影響します。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

1.4.8.4. RESTEasy Reactive エクステンションの名前が Quarkus REST に変更される

Red Hat build of Quarkus 3.15 では、RESTEasy Reactive エクステンションの名前が quarkus-rest-* に変更され、リアクティブワークロードとブロッキングワークロードの両方をサポートしていることが反映されています。

Maven の再配置が実装されました。この変更を適用するには、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドに記載されている自動更新を実行します。

プロジェクト内の古いエクステンション名のすべてのインスタンスを新しい名前に置き換えます。

新しいエクステンションの名前のほとんどは、次の命名規則に従います。

  • -rest で終わるエクステンションは、Quarkus REST (旧称 RESTEasy Reactive) を使用します。
  • -resteasy で終わるエクステンションは、RESTEasy Classic を使用します。

名前を変更したエクステンション

以下のエクステンションの名前が変更されました。

Expand
以前の名前新しい名前

quarkus-resteasy-reactive

quarkus-rest

quarkus-resteasy-reactive-jackson

quarkus-rest-jackson

quarkus-resteasy-reactive-jaxb

quarkus-rest-jaxb

quarkus-resteasy-reactive-jsonb

quarkus-rest-jsonb

quarkus-resteasy-reactive-kotlin

quarkus-rest-kotlin

quarkus-resteasy-reactive-kotlin-serialization

quarkus-rest-kotlin-serialization

quarkus-resteasy-reactive-links

quarkus-rest-links

quarkus-resteasy-reactive-qute

quarkus-rest-qute

quarkus-resteasy-reactive-servlet

quarkus-rest-servlet

quarkus-rest-client-reactive

quarkus-rest-client

quarkus-rest-client-reactive-jackson

quarkus-rest-client-jackson

quarkus-rest-client-reactive-jaxb

quarkus-rest-client-jaxb

quarkus-rest-client-reactive-jsonb

quarkus-rest-client-jsonb

quarkus-rest-client-reactive-kotlin-serialization

quarkus-rest-client-kotlin-serialization

quarkus-jaxrs-client-reactive

quarkus-rest-client-jaxrs

quarkus-keycloak-admin-client

quarkus-keycloak-admin-resteasy-client

quarkus-keycloak-admin-client-reactive

quarkus-keycloak-admin-rest-client

quarkus-oidc-client-filter

quarkus-resteasy-client-oidc-filter

quarkus-oidc-client-reactive-filter

quarkus-rest-client-oidc-filter

quarkus-oidc-token-propagation

quarkus-resteasy-client-oidc-token-propagation

quarkus-oidc-token-propagation-reactive

quarkus-rest-client-oidc-token-propagation

quarkus-csrf-reactive

quarkus-rest-csrf

quarkus-spring-web-resteasy-classic

quarkus-spring-web-resteasy

quarkus-spring-web-resteasy-reactive

quarkus-spring-web-rest

設定ルートも更新されました:

Expand
古い設定ルート新しい設定ルート

quarkus.resteasy-reactive.*

quarkus.rest.*

quarkus.rest-client-reactive.*

quarkus.rest-client.*

quarkus.oidc-client-reactive-filter.*

quarkus.rest-client-oidc-filter.*

quarkus.oidc-token-propagation-reactive.*

quarkus.rest-client-oidc-token-propagation.*

quarkus.csrf-reactive.*

quarkus.rest-csrf.*

quarkus.oidc-client-filter.*

quarkus.resteasy-client-oidc-filter.*

quarkus.oidc-token-propagation.*

quarkus.resteasy-client-oidc-token-propagation.*

必要に応じて、古い設定プロパティーに戻すための自動フォールバックメカニズムが用意されています。

エクステンション開発者への影響

エクステンション開発者の場合は、次のデプロイメント関連のアーティファクトも名前が変更されていることに注意してください。

Expand
以前の名前新しい名前

quarkus-resteasy-reactive-deployment

quarkus-rest-deployment

quarkus-resteasy-reactive-jackson-common

quarkus-rest-jackson-common

quarkus-resteasy-reactive-jackson-common-deployment

quarkus-rest-jackson-common-deployment

quarkus-resteasy-reactive-jackson-deployment

quarkus-rest-jackson-deployment

quarkus-resteasy-reactive-jaxb-common

quarkus-rest-jaxb-common

quarkus-resteasy-reactive-jaxb-common-deployment

quarkus-rest-jaxb-common-deployment

quarkus-resteasy-reactive-jaxb-deployment

quarkus-rest-jaxb-deployment

quarkus-resteasy-reactive-jsonb-common

quarkus-rest-jsonb-common

quarkus-resteasy-reactive-jsonb-common-deployment

quarkus-rest-jsonb-common-deployment

quarkus-resteasy-reactive-jsonb-deployment

quarkus-rest-jsonb-deployment

quarkus-resteasy-reactive-kotlin-deployment

quarkus-rest-kotlin-deployment

quarkus-resteasy-reactive-kotlin-serialization-common

quarkus-rest-kotlin-serialization-common

quarkus-resteasy-reactive-kotlin-serialization-common-deployment

quarkus-rest-kotlin-serialization-common-deployment

quarkus-resteasy-reactive-kotlin-serialization-deployment

quarkus-rest-kotlin-serialization-deployment

quarkus-resteasy-reactive-links-deployment

quarkus-rest-links-deployment

quarkus-resteasy-reactive-qute-deployment

quarkus-rest-qute-deployment

quarkus-resteasy-reactive-server-common

quarkus-rest-server-common

quarkus-resteasy-reactive-server-spi-deployment

quarkus-rest-server-spi-deployment

quarkus-resteasy-reactive-servlet-deployment

quarkus-rest-servlet-deployment

quarkus-resteasy-reactive-common

quarkus-rest-common

quarkus-resteasy-reactive-common-deployment

quarkus-rest-common-deployment

quarkus-rest-client-reactive-deployment

quarkus-rest-client-deployment

quarkus-rest-client-reactive-jackson-deployment

quarkus-rest-client-jackson-deployment

quarkus-rest-client-reactive-jaxb-deployment

quarkus-rest-client-jaxb-deployment

quarkus-rest-client-reactive-jsonb-deployment

quarkus-rest-client-jsonb-deployment

quarkus-rest-client-reactive-kotlin-serialization-deployment

quarkus-rest-client-kotlin-serialization-deployment

quarkus-rest-client-reactive-spi-deployment

quarkus-rest-client-spi-deployment

quarkus-jaxrs-client-reactive-deployment

quarkus-rest-client-jaxrs-deployment

quarkus-keycloak-admin-client-deployment

quarkus-keycloak-admin-resteasy-client-deployment

quarkus-keycloak-admin-client-reactive-deployment

quarkus-keycloak-admin-rest-client-deployment

quarkus-oidc-client-filter-deployment

quarkus-resteasy-client-oidc-filter-deployment

quarkus-oidc-client-reactive-filter-deployment

quarkus-rest-client-oidc-filter-deployment

quarkus-oidc-token-propagation-deployment

quarkus-resteasy-client-oidc-token-propagation-deployment

quarkus-oidc-token-propagation-reactive-deployment

quarkus-rest-client-oidc-token-propagation-deployment

quarkus-csrf-reactive-deployment

quarkus-rest-csrf-deployment

quarkus-spring-web-resteasy-classic-deployment

quarkus-spring-web-resteasy-deployment

quarkus-spring-web-resteasy-reactive-deployment

quarkus-spring-web-rest-deployment

1.4.8.5. WebJar Locator エクステンションの名前が Web-dependency-locator に変更される

Red Hat build of Quarkus 3.15 では、quarkus-webjars-locator エクステンションの名前が quarkus-web-dependency-locator に変更され、mvnpm (Maven NPM) と importmaps も含まれるように強化されています。

新しいエクステンション名を使用するようにコードと設定を更新します。

この変更は手動で適用する必要があります。これは、Red Hat build of Quarkus 3.15 へのアプリケーションの移行 ガイドで説明されている自動更新ではカバーされません。

詳細は、Quarkus の Web 依存関係ロケーター ガイドを参照してください。

法律上の通知

Copyright © 2025 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