1.4. ネイティブ実行可能ファイルの設定プロパティー


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

設定プロパティー

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

Expand

プロパティー

説明

デフォルト

quarkus.native.debug.enabled

デバッグを有効にし、別の .debug ファイルにデバッグシンボルを生成します。quarkus.native.container-build と使用すると、Red Hat build of Quarkus は、ネイティブイメージからのデバッグ情報を分割する objcopy ユーティリティーをインストールする binutils パッケージを含む Red Hat Enterprise Linux または他の Linux ディストリビューションのみをサポートします。

boolean

false

quarkus.native.resources.excludes

ネイティブイメージに追加するべきではないリソースパスに一致する glob のコンマ区切りリスト。

文字列のリスト

 

quarkus.native.additional-build-args

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

文字列のリスト

 

quarkus.native.enable-http-url-handler

HTTP URL ハンドラーを有効にします。これにより、HTTP URL に対して URL.openConnection() を実行できるようになります。

boolean

true

quarkus.native.enable-https-url-handler

HTTPS URL ハンドラーを有効にします。これにより、HTTPS URL に対して URL.openConnection() を実行できるようになります。

boolean

false

quarkus.native.enable-all-security-services

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

boolean

false

quarkus.native.add-all-charsets

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

boolean

false

quarkus.native.graalvm-home

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

string

${GRAALVM_HOME:}

quarkus.native.java-home

JDK のパスが含まれます。

file

${java.home}

quarkus.native.native-image-xmx

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

string

 

quarkus.native.debug-build-process

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

boolean

false

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

debug-build-processtrue の場合は、docker でビルドする際にデバッグポートを公開します。

boolean

true

quarkus.native.cleanup-server

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

boolean

false

quarkus.native.enable-isolates

メモリー管理を改善するために分離を有効にします。

boolean

true

quarkus.native.enable-fallback-images

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

boolean

false

quarkus.native.enable-server

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

boolean

false

quarkus.native.auto-service-loader-registration

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

boolean

false

quarkus.native.dump-proxies

検査用にすべてのプロキシーのバイトコードをダンプします。

boolean

false

quarkus.native.container-build

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

boolean

false

quarkus.native.builder-image

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

string

registry.access.redhat.com/quarkus/mandrel-for-jdk-21-rhel8:23.1

quarkus.native.container-runtime

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

string

 

quarkus.native.container-runtime-options

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

文字列のリスト

 

quarkus.native.enable-vm-inspection

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

boolean

false

quarkus.native.full-stack-traces

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

boolean

true

quarkus.native.enable-reports

呼び出しパスと、含まれるパッケージ、クラス、メソッドのレポートを生成します。

boolean

false

quarkus.native.report-exception-stack-traces

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

boolean

true

quarkus.native.report-errors-at-runtime

ランタイム時にエラーを報告します。これにより、サポートされていない機能を使用すると、ランタイムでアプリケーションが失敗する可能性があります。

boolean

false

quarkus.native.resources.includes

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

文字列のリスト

 

ビルド設定中に、プロジェクト内で共通のパターンまたは場所を共有する一連のファイルまたはリソースを含める場合は、glob パターンを使用できます。

たとえば、複数の設定ファイルを含むディレクトリーがある場合は、glob パターンを使用してそのディレクトリー内のすべてのファイルを含めることができます。

以下に例を示します。

quarkus.native.resources.includes = my/config/files/*
Copy to Clipboard Toggle word wrap

次の例は、ネイティブイメージに追加するリソースパスに一致する glob のコンマ区切りリストを示しています。これらのパターンにより、クラスパスで見つかったすべての .png イメージがネイティブイメージに追加されるほか、サブディレクトリーの下にネストされている場合でも、フォルダーバーの下の .txt で終わるすべてのファイルが追加されます。

 quarkus.native.resources.includes = **/*.png,bar/**/*.txt
Copy to Clipboard Toggle word wrap

サポートされている glob 機能

次の表は、サポートされる glob 機能とその説明をリスト化したものです。

Expand

文字

機能の説明

*

スラッシュ (/) を含まない、空の可能性もある文字列を照合します。

**

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

?

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

[abc]

括弧内に指定された 1 文字を照合しますが、スラッシュは照合しません。

[a-z]

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

[!abc]

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

[!a-z]

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

{one,two,three}

コンマで区切られた代替のトークンを照合します。トークンには、ワイルドカード、ネストされた論理和指定子、範囲が含まれます。

\

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

1.4.1. Red Hat build of Quarkus ネイティブコンピレーションのメモリー消費を設定する

Red Hat build of 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 package -Dnative -Dquarkus.native.container-build=true -Dquarkus.native.native-image-xmx=<maximum_memory>
      Copy to Clipboard Toggle word wrap

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

注記

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

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る