PropertiesLauncher 功能
PropertiesLauncher
有一些特殊功能,可以透過外部屬性(系統屬性、環境變數、Manifest 條目或 loader.properties
)啟用。下表描述了這些屬性
鍵 | 用途 |
---|---|
|
逗號分隔的類路徑,例如 |
|
用於解析 |
|
主方法的預設引數(空格分隔)。 |
|
要啟動的主類的名稱(例如, |
|
屬性檔案的名稱(例如, |
|
屬性檔案的路徑(例如, |
|
布林標誌,指示是否應將所有屬性新增到系統屬性中。它預設為 |
當指定為環境變數或 Manifest 條目時,應使用以下名稱
鍵 | Manifest 條目 | 環境變數 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
構建外掛在構建 uber jar 時會自動將 Main-Class 屬性移動到 Start-Class 。如果使用該方式,請透過使用 Main-Class 屬性指定要啟動的類的名稱,而省略 Start-Class 。 |
以下規則適用於使用 PropertiesLauncher
-
loader.properties
會在loader.home
中搜索,然後在類路徑的根目錄中搜索,最後在classpath:/BOOT-INF/classes
中搜索。使用第一個存在該名稱檔案的位置。 -
僅當未指定
loader.config.location
時,loader.home
才是額外屬性檔案(覆蓋預設值)的目錄位置。 -
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
時的 JVM 類路徑)。 -
在使用所有值之前,會從系統屬性和環境變數以及屬性檔案本身進行佔位符替換。
-
屬性的搜尋順序(當需要查詢多個位置時)是:環境變數、系統屬性、
loader.properties
、解壓的歸檔 Manifest 和歸檔 Manifest。