此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Boot 3.4.0spring-doc.cn

属性Launcher 功能

PropertiesLauncher 具有一些特殊功能,这些功能可以通过外部属性(系统属性、环境变量、清单条目或 )启用。 下表描述了这些属性:loader.propertiesspring-doc.cn

钥匙 目的

loader.pathspring-doc.cn

逗号分隔的类路径,例如 . 较早的条目优先,就像命令行中的常规条目一样。lib,${HOME}/app/lib-classpathjavacspring-doc.cn

loader.homespring-doc.cn

用于解析 中的相对路径。 例如,given ,则是 Classpath 位置(以及该目录中的所有 jar 文件)。 此属性还用于查找文件,如以下示例所示,它默认为 .loader.pathloader.path=lib${loader.home}/libloader.properties/opt/app${user.dir}spring-doc.cn

loader.argsspring-doc.cn

main 方法的默认参数(以空格分隔)。spring-doc.cn

loader.mainspring-doc.cn

要启动的主类的名称(例如,)。com.app.Applicationspring-doc.cn

loader.config.namespring-doc.cn

属性文件的名称(例如 )。 它默认为 .launcherloaderspring-doc.cn

loader.config.locationspring-doc.cn

属性文件的路径(例如 )。 它默认为 .classpath:loader.propertiesloader.propertiesspring-doc.cn

loader.systemspring-doc.cn

Boolean 标志,指示应将所有属性添加到系统属性中。 它默认为 .falsespring-doc.cn

当指定为环境变量或清单条目时,应使用以下名称:spring-doc.cn

钥匙 清单条目 环境变量

loader.pathspring-doc.cn

Loader-Pathspring-doc.cn

LOADER_PATHspring-doc.cn

loader.homespring-doc.cn

Loader-Homespring-doc.cn

LOADER_HOMEspring-doc.cn

loader.argsspring-doc.cn

Loader-Argsspring-doc.cn

LOADER_ARGSspring-doc.cn

loader.mainspring-doc.cn

Start-Classspring-doc.cn

LOADER_MAINspring-doc.cn

loader.config.locationspring-doc.cn

Loader-Config-Locationspring-doc.cn

LOADER_CONFIG_LOCATIONspring-doc.cn

loader.systemspring-doc.cn

Loader-Systemspring-doc.cn

LOADER_SYSTEMspring-doc.cn

构建插件会自动将属性移动到构建 uber jar 时。 如果使用该选项,请使用 attribute 并省略 来指定要启动的类的名称。Main-ClassStart-ClassMain-ClassStart-Class

以下规则适用于使用 PropertiesLauncherspring-doc.cn

  • loader.properties在 中搜索,然后在 Classpath 的根目录中搜索,然后在 中搜索。 使用具有该名称的文件所在的第一个位置。loader.homeclasspath:/BOOT-INF/classesspring-doc.cn

  • loader.home是附加属性文件的目录位置(仅在未指定时覆盖默认值)。loader.config.locationspring-doc.cn

  • loader.path可以包含目录(以递归方式扫描 jar 和 zip 文件)、存档路径、存档中扫描 jar 文件的目录(例如)或通配符模式(用于默认 JVM 行为)。 存档路径可以是相对于文件系统的路径,也可以是文件系统中带有前缀的任意位置。dependencies.jar!/libloader.homejar:file:spring-doc.cn

  • loader.path(如果为空)默认为 (表示本地目录,如果从存档运行,则为嵌套目录)。 因此,当没有提供其他配置时,PropertiesLauncher 的行为与 JarLauncher 相同。BOOT-INF/libspring-doc.cn

  • loader.path不能用于配置的位置(用于搜索后者的 Classpath 是启动 PropertiesLauncher 时的 JVM Classpath)。loader.propertiesspring-doc.cn

  • 占位符替换是在使用之前根据 System 和 environment variables 以及 properties 文件本身对所有值完成的。spring-doc.cn

  • 属性的搜索顺序(在多个位置查找是有意义的)是环境变量、系统属性、松散的存档清单和存档清单。loader.propertiesspring-doc.cn