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

启动可执行 Jar

Launcherclass 是一个特殊的引导类,用作可执行 jar 的主入口点。 这是实际的Main-Class在您的 jar 文件中,它用于设置适当的ClassLoader并最终调用您的main()方法。spring-doc.cadn.net.cn

有三个Starters子类(JarLauncher,WarLauncherPropertiesLauncher). 它们的目的是加载资源 (.class文件等),来自目录中的嵌套 jar 文件或 war 文件(而不是 Classpath 上显式的 WAR 文件)。 在JarLauncherWarLauncher,则嵌套路径是固定的。JarLauncher查找范围BOOT-INF/lib/WarLauncher查找范围WEB-INF/lib/WEB-INF/lib-provided/. 如果需要更多,可以在这些位置添加额外的 jar。spring-doc.cadn.net.cn

PropertiesLauncher查找范围BOOT-INF/lib/在您的应用程序存档中。 您可以通过设置名为LOADER_PATHloader.pathloader.properties(这是目录、存档或存档中的目录的逗号分隔列表)。spring-doc.cadn.net.cn

Starters清单

您需要指定适当的Launcher作为Main-Class属性META-INF/MANIFEST.MF. 要启动的实际类(即包含mainmethod) 应在Start-Class属性。spring-doc.cadn.net.cn

以下示例显示了一个典型的MANIFEST.MF对于可执行 jar 文件:spring-doc.cadn.net.cn

Main-Class: org.springframework.boot.loader.launch.JarLauncher
Start-Class: com.mycompany.project.MyApplication

对于 war 文件,它如下所示:spring-doc.cadn.net.cn

Main-Class: org.springframework.boot.loader.launch.WarLauncher
Start-Class: com.mycompany.project.MyApplication
您无需指定Class-Path条目。 类路径是从嵌套的 jar 中推导出来的。