此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Boot 3.4.0! |
属性Launcher 功能
PropertiesLauncher
具有一些特殊功能,这些功能可以通过外部属性(系统属性、环境变量、清单条目或 )启用。
下表描述了这些属性:loader.properties
钥匙 | 目的 |
---|---|
|
逗号分隔的类路径,例如 .
较早的条目优先,就像命令行中的常规条目一样。 |
|
用于解析 中的相对路径。
例如,given ,则是 Classpath 位置(以及该目录中的所有 jar 文件)。
此属性还用于查找文件,如以下示例所示,它默认为 . |
|
main 方法的默认参数(以空格分隔)。 |
|
要启动的主类的名称(例如,)。 |
|
属性文件的名称(例如 )。
它默认为 . |
|
属性文件的路径(例如 )。
它默认为 . |
|
Boolean 标志,指示应将所有属性添加到系统属性中。
它默认为 . |
当指定为环境变量或清单条目时,应使用以下名称:
钥匙 | 清单条目 | 环境变量 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
构建插件会自动将属性移动到构建 uber jar 时。
如果使用该选项,请使用 attribute 并省略 来指定要启动的类的名称。Main-Class Start-Class Main-Class Start-Class |
以下规则适用于使用 PropertiesLauncher
:
-
loader.properties
在 中搜索,然后在 Classpath 的根目录中搜索,然后在 中搜索。 使用具有该名称的文件所在的第一个位置。loader.home
classpath:/BOOT-INF/classes
-
loader.home
是附加属性文件的目录位置(仅在未指定时覆盖默认值)。loader.config.location
-
loader.path
可以包含目录(以递归方式扫描 jar 和 zip 文件)、存档路径、存档中扫描 jar 文件的目录(例如)或通配符模式(用于默认 JVM 行为)。 存档路径可以是相对于文件系统的路径,也可以是文件系统中带有前缀的任意位置。dependencies.jar!/lib
loader.home
jar:file:
-
loader.path
(如果为空)默认为 (表示本地目录,如果从存档运行,则为嵌套目录)。 因此,当没有提供其他配置时,PropertiesLauncher
的行为与JarLauncher
相同。BOOT-INF/lib
-
loader.path
不能用于配置的位置(用于搜索后者的 Classpath 是启动PropertiesLauncher
时的 JVM Classpath)。loader.properties
-
占位符替换是在使用之前根据 System 和 environment variables 以及 properties 文件本身对所有值完成的。
-
属性的搜索顺序(在多个位置查找是有意义的)是环境变量、系统属性、松散的存档清单和存档清单。
loader.properties