第3章 ネイティブ実行可能ファイルの設定プロパティー


設定プロパティーは、ネイティブ実行可能ファイルの生成方法を定義します。application.properties ファイルを使用して、Quarkus アプリケーションを設定できます。

設定プロパティー

以下の表は、ネイティブ実行可能ファイルの生成方法を定義するよう設定できる設定プロパティーの一覧です。

Expand
プロパティー説明タイプデフォルト

quarkus.native.additional-build-args

ビルドプロセスにパスする追加の引数。

文字列の一覧

 

quarkus.native.enable-http-url-handler

HTTP URL ハンドラーの有効化。これにより、HTTP URL に URL.openConnection() が可能となります。

ブール値

true

quarkus.native.enable-https-url-handler

HTTPS URL ハンドラーの有効化。これにより、HTTPS URL に URL.openConnection() が可能となります。

ブール値

false

quarkus.native.enable-all-security-services

ネイティブイメージにすべてのセキュリティーサービスを追加します。

ブール値

false

quarkus.native.add-all-charsets

ネイティブイメージにすべてのキャラクターセットを追加します。これにより、イメージサイズが大きくなります。

ブール値

false

quarkus.native.graalvm-home

Graal ディストリビューションのパスが含まれます。

文字列

${GRAALVM_HOME:}

quarkus.native.java-home

JDK のパスが含まれます。

ファイル

${java.home}

quarkus.native.native-image-xmx

ネイティブイメージを生成するために使用する Java の最大ヒープサイズ。

文字列

 

quarkus.native.debug-build-process

ネイティブイメージのビルドを実行する前に、デバッガーがビルドプロセスにアタッチするのを待ちます。GraalVM インターナルの知識のあるユーザーにとって、これは高度なオプションになります。

ブール値

false

quarkus.native.publish-debug-build-process-port

Docker を使用したビルド中にデバッグポートをパブリッシュし、debug-build-process が true の場合。

ブール値

true

quarkus.native.cleanup-server

ネイティブイメージサーバーを再起動します。

ブール値

false

quarkus.native.enable-isolates

メモリー管理を向上させるために分離を有効化します。

ブール値

true

quarkus.native.enable-fallback-images

ネイティブイメージが失敗した場合は、JVM ベースのフォールバックイメージを作成します。

ブール値

false

quarkus.native.enable-server

ネイティブイメージサーバーを使用します。これにより、コンパイルを高速化することは可能ですが、キャッシュの無効化問題により、ドロップが変更される可能性があります。

ブール値

false

quarkus.native.auto-service-loader-registration

すべての META-INF/services エントリーを自動的に登録します。

ブール値

false

quarkus.native.dump-proxies

インスペクション用にすべてのプロキシーのバイトコードをダンプします。

ブール値

false

quarkus.native.container-build

コンテナーランタイムを使用したビルド。デフォルトで Docker が使用されます。

ブール値

false

quarkus.native.builder-image

イメージをビルドするための Docker イメージ。

文字列

registry.access.redhat.com/quarkus/mandrel-20-rhel8:20.3

quarkus.native.container-runtime

イメージをビルドするために使用されるコンテナーランタイム。たとえば、Docker などがあります。

文字列

 

quarkus.native.container-runtime-options

コンテナーランタイムにパスするオプション。

文字列の一覧

 

quarkus.native.enable-vm-inspection

イメージの VM イントロスペクションを有効化します。

ブール値

false

quarkus.native.full-stack-traces

イメージのフルスタックトレースを有効化します。

ブール値

true

quarkus.native.enable-reports

コールパスおよび含まれるパッケージ/クラス/メソッドのレポートを生成します。

ブール値

false

quarkus.native.report-exception-stack-traces

フルスタックトレースを使用して例外を報告します。

ブール値

true

quarkus.native.report-errors-at-runtime

ランタイム時にエラーを報告します。サポート対象外の機能を使用している場合は、お使いのアプリケーションがランタイム時に失敗する可能性があります。

ブール値

false

quarkus.native.resources.includes

ネイティブイメージに追加する必要のあるリソースパスに一致する glob のコンマ区切りリスト。すべてのプラットフォームで、スラッシュ (/) をパスセパレーターとして使用します。glob はスラッシュで開始してはいけません。たとえば、ソースツリーに src/main/resources/ignored.pngsrc/main/resources/foo/selected.png があり、依存関係 JAR のいずれかに bar/some.txt ファイルが含まれる場合、quarkus.native.resources.includes = foo/,bar//*.txt の設定では src/main/resources/foo/selected.png ファイルおよび bar/some.txt ファイルはネイティブイメージに含まれますが、src/main/resources/ignored.png は含まれません。サポートされる glob 機能の詳細は、「サポートされる glob 機能とその説明」を参照してください。

文字列の一覧

 

quarkus.native.debug.enabled

デバッグを有効化し、別の .debug ファイルにデバッグシンボルを生成します。

ブール値

false

サポートされる glob 機能とその説明

以下の表は、サポートされる glob 機能とその説明を一覧表示しています。

Expand

文字

機能の説明

*

スラッシュ (/) を含まない空の可能性のある文字列と一致します。

**

スラッシュ (/) を含むかもしれない空の可能性のある文字列と一致します。

?

1 つの文字と一致しますが、スラッシュとは一致しません。

[abc]

ブラケットで指定した範囲の文字の 1 つと一致しますが、スラッシュとは一致しません。

[a-z]

ブラケットで指定した範囲の文字の 1 つと一致しますが、スラッシュとは一致しません。

[!abc]

ブラケットで指定していない文字の 1 つと一致しますが、スラッシュとは一致しません。

[a-z]

ブラケットで指定した範囲外の文字の 1 つと一致しますが、スラッシュとは一致しません。

{one,two,three}

コンマ区切り文字とトークンが交互に連続する文字列で、あらゆるトークンと一致します。トークンには、ワイルドカード、ネストされたオルタネーション、および範囲が含まれます。

\

エスケープ文字。エスケープには、application.properties パーサー、MicroProfile Config リストコンバーター、および Glob パーサーの 3 つのレベルがあります。3 つのレベルはすべて、バックスラッシュをエスケープ文字として使用します。

3.1. Quarkus ネイティブコンパイルのメモリー消費の設定

Quarkus アプリケーションをネイティブ実行可能ファイルにコンパイルすると、分析および最適化の際にメモリーを大量に消費します。quarkus.native.native-image-xmx 設定プロパティーを設定することで、ネイティブコンパイル時に使用されるメモリーの量を制限することができます。メモリー制限を低く設定すると、ビルド時間が長くなる可能性があります。

手順

  • 以下のいずれかの方法を使用して quarkus.native.native-image-xmx プロパティーに値を設定し、ネイティブイメージのビルドタイム中のメモリー消費を制限します。

    • application.properties ファイルの使用

      quarkus.native.native-image-xmx=<maximum_memory>
      Copy to Clipboard Toggle word wrap
    • システムプロパティーの設定

      mvn -Pnative -Dquarkus.native.container-build=true -Dquarkus.native.native-image-xmx=<maximum_memory>
      Copy to Clipboard Toggle word wrap

      このコマンドは、Docker を使用してネイティブ実行可能ファイルをビルドします。-Dquarkus.native.container-runtime=podman 引数を追加して Podman を使用します。

注記

たとえば、メモリー制限を 6 GB に設定するには、quarkus.native.native-image-xmx=6g と入力します。値は、2MB より大きい 1024 の倍数でなければなりません。メガバイトを示す m または M の文字を追加するか、ギガバイトを示す g または G の文字を追加します。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat