PropertiesLauncher 功能
PropertiesLauncher 有一些特殊功能,可以透過外部屬性(系統屬性、環境變數、清單條目或 loader.properties)啟用。下表描述了這些屬性
| 鍵 | 目的 |
|---|---|
|
逗號分隔的 Classpath,例如 |
|
用於解析 |
|
主方法的預設引數(以空格分隔)。 |
|
要啟動的主類的名稱(例如, |
|
屬性檔案的名稱(例如, |
|
屬性檔案的路徑(例如, |
|
布林標誌,指示所有屬性都應新增到系統屬性中。它預設為 |
當指定為環境變數或清單條目時,應使用以下名稱
| 鍵 | 清單條目 | 環境變數 |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
構建外掛在構建 uber jar 時會自動將 Main-Class 屬性移動到 Start-Class。如果使用該功能,請使用 Main-Class 屬性指定要啟動的類名,並省略 Start-Class。 |
以下規則適用於使用 PropertiesLauncher
-
loader.properties在loader.home中搜索,然後是 classpath 的根目錄,然後是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的行為與JarLauncher相同。 -
loader.path不能用於配置loader.properties的位置(當PropertiesLauncher啟動時,用於搜尋後者的 classpath 是 JVM classpath)。 -
在使用所有值之前,會從系統和環境變數以及屬性檔案本身進行佔位符替換。
-
屬性的搜尋順序(在多個地方查詢有意義時)是環境變數、系統屬性、
loader.properties、解壓後的存檔清單和存檔清單。