1.3. ネイティブ実行可能ファイルの設定プロパティー
設定プロパティーは、ネイティブ実行可能ファイルの生成方法を定義します。application.properties ファイルを使用して、Quarkus アプリケーションを設定できます。
設定プロパティー
以下の表は、ネイティブ実行可能ファイルの生成方法を定義するよう設定できる設定プロパティーのリストです。
| プロパティー | 説明 | 型 | デフォルト |
|
|
debug が有効で、デバッグシンボルが生成されます。シンボルは別の | boolean | false |
|
| ネイティブイメージに追加すべきではないリソースパスに一致する glob のコンマ区切りリスト。 | 文字列のリスト | |
|
| ビルドプロセスにパスする追加の引数。 | 文字列のリスト | |
|
|
HTTP URL ハンドラーを有効にします。これにより、HTTP URL に対して | boolean |
|
|
|
HTTPS URL ハンドラーを有効にします。これにより、HTTPS URL に対する | boolean |
|
|
| ネイティブイメージにすべてのセキュリティーサービスを追加します。 | boolean |
|
|
| ネイティブイメージにすべてのキャラクターセットを追加します。これにより、イメージサイズが大きくなります。 | boolean |
|
|
| GraalVM ディストリビューションのパスが含まれます。 | string |
|
|
| JDK のパスが含まれます。 |
| |
|
| ネイティブイメージを生成するために使用する Java の最大ヒープサイズ。 | string | |
|
| ネイティブイメージのビルドを実行する前に、デバッガーがビルドプロセスにアタッチするまで待機します。GraalVM インターナルの知識のあるユーザーにとって、これは高度なオプションになります。 | boolean |
|
|
|
| boolean |
|
|
| ネイティブイメージサーバーを再起動します。 | boolean |
|
|
| メモリー管理を改善するために分離を有効にします。 | boolean |
|
|
| ネイティブイメージが失敗した場合に、JVM ベースのフォールバックイメージを作成します。 | boolean |
|
|
| ネイティブイメージサーバーを使用します。これによりコンパイルが高速化されますが、を高速化できますが、キャッシュ無効化の問題により変更が失われる可能性があります。 | boolean |
|
|
|
すべての | boolean |
|
|
| 検査用にすべてのプロキシーのバイトコードをダンプします。 | boolean |
|
|
| コンテナーランタイムを使用してビルドします。デフォルトで Docker が使用されます。 | boolean |
|
|
| イメージをビルドするための Docker イメージ。 | string |
|
|
| イメージをビルドするために使用されるコンテナーランタイム。たとえば、Docker などがあります。 | string | |
|
| コンテナーランタイムにパスするオプション。 | 文字列のリスト | |
|
| イメージの VM イントロスペクションを有効化します。 | boolean |
|
|
| イメージのフルスタックトレースを有効化します。 | boolean |
|
|
| コールパスおよび含まれるパッケージ/クラス/メソッドのレポートを生成します。 | ブール値 |
|
|
| フルスタックトレースを使用して例外を報告します。 | boolean |
|
|
| ランタイム時にエラーを報告します。サポートされていない機能を使用すると、アプリケーションが実行時に失敗する可能性があります。 | boolean |
|
|
|
ネイティブイメージに追加する必要のあるリソースパスに一致する glob のコンマ区切りリスト。すべてのプラットフォームで、パス区切り文字としてスラッシュ ( | 文字列のリスト | |
|
|
デバッグを有効にし、別の | boolean |
|
サポートされている glob 機能
次の表は、サポートされる glob 機能とその説明をリスト化したものです。
| Character | 機能の説明 |
|
|
スラッシュ ( |
|
|
スラッシュ ( |
|
| 1 つの文字と一致しますが、スラッシュとは一致しません。 |
|
| 括弧内に指定された 1 文字を照合しますが、スラッシュは照合しません。 |
|
| ブラケットで指定した範囲の文字の 1 つと一致しますが、スラッシュとは一致しません。 |
|
| ブラケットで指定していない文字の 1 つと一致しますが、スラッシュとは一致しません。 |
|
| ブラケットで指定した範囲外の文字の 1 つと一致しますが、スラッシュとは一致しません。 |
|
| コンマで区切られた置換トークンのいずれかと一致します。トークンには、ワイルドカード、ネストされたオルタネーション、および範囲が含まれます。 |
|
|
エスケープ文字。エスケープには、 |
1.3.1. Quarkus ネイティブコンパイルのメモリー消費の設定 リンクのコピーリンクがクリップボードにコピーされました!
Quarkus アプリケーションをネイティブ実行可能ファイルにコンパイルすると、分析および最適化の際にメモリーを大量に消費します。quarkus.native.native-image-xmx 設定プロパティーを設定して、ネイティブコンパイル時に使用されるメモリーの量を制限できます。メモリー制限を低く設定すると、ビルド時間が長くなる可能性があります。
手順
以下のいずれかの方法を使用して
quarkus.native.native-image-xmxプロパティーに値を設定し、ネイティブイメージのビルドタイム中のメモリー消費を制限します。application.propertiesファイルを使用します。quarkus.native.native-image-xmx=<maximum_memory>システムプロパティーの設定
mvn -Pnative -Dquarkus.native.container-build=true -Dquarkus.native.native-image-xmx=<maximum_memory>このコマンドは、Docker を使用してネイティブ実行可能ファイルをビルドします。Podman を使用するには、
-Dquarkus.native.container-runtime=podman引数を追加します。
たとえば、メモリー制限を 6 GB に設定するには、quarkus.native.native-image-xmx=6g を入力します。値は、2MB より大きい 1024 の倍数にする必要があります。メガバイトを示す m または M、ギガバイトを示す g または G の文字を追加します。