PropertiesLauncher の機能
PropertiesLauncher
(Javadoc) には、外部プロパティ (システムプロパティ、環境変数、マニフェストエントリ、または loader.properties
) で有効にできる特別な機能がいくつかあります。次の表で、これらのプロパティについて説明します。
キー | 目的 |
---|---|
|
|
|
|
| main メソッドのデフォルト引数(スペースで区切られます)。 |
| 起動するメインクラスの名前(例: |
| プロパティファイルの名前(例: |
| プロパティファイルへのパス(例: |
| すべてのプロパティをシステムプロパティに追加する必要があることを示すブールフラグ。デフォルトは |
環境変数またはマニフェストエントリとして指定する場合、次の名前を使用する必要があります。
キー | マニフェストエントリ | 環境変数 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ビルドプラグインは、uber jar がビルドされるときに、Main-Class 属性を Start-Class に自動的に移動します。これを使用する場合は、Main-Class 属性を使用し、Start-Class を省略して、起動するクラスの名前を指定します。 |
PropertiesLauncher
(Javadoc) を操作する場合は、次のルールが適用されます。
loader.properties
はloader.home
で検索され、次にクラスパスのルートで検索され、次にclasspath:/BOOT-INF/classes
で検索されます。その名前のファイルが存在する最初の場所が使用されます。loader.home
は、loader.config.location
が指定されていない場合のみ、追加のプロパティファイルのディレクトリの場所です(デフォルトを上書きします)。loader.path
には、ディレクトリ(jar および zip ファイルを再帰的にスキャンする)、アーカイブパス、jar ファイルをスキャンするアーカイブ内のディレクトリ(たとえばdependencies.jar!/lib
)、またはワイルドカードパターン(デフォルトの JVM 動作の場合)を含めることができます。アーカイブパスは、loader.home
またはjar:file:
プレフィックスを持つファイルシステム内の任意の場所からの相対パスにすることができます。loader.path
(空の場合) はデフォルトでBOOT-INF/lib
(ローカルディレクトリ、またはアーカイブから実行している場合はネストされたディレクトリ) になります。このため、追加の構成が指定されていない場合、PropertiesLauncher
(Javadoc) はJarLauncher
(Javadoc) と同じように動作します。loader.path
を使用してloader.properties
の場所を構成することはできません (後者を検索するために使用されるクラスパスは、PropertiesLauncher
(Javadoc) が起動されたときの JVM クラスパスです)。プレースホルダーの置換は、システムおよび環境変数に加えて、使用前にすべての値のプロパティファイル自体から行われます。
プロパティの検索順序(複数の場所を調べるのが理にかなっている場合)は、環境変数、システムプロパティ、
loader.properties
、展開されたアーカイブマニフェスト、アーカイブマニフェストです。