启动可执行 Jar
这Launcher
class 是一个特殊的引导类,用作可执行 jar 的主要入口点。
这是实际的Main-Class
,它用于设置适当的ClassLoader
并最终调用您的main()
方法。
有三个Starters子类(JarLauncher
,WarLauncher
和PropertiesLauncher
).
它们的目的是加载资源 (.class
文件等)来自目录中的嵌套 jar 文件或 war 文件(而不是类路径上显式的那些文件)。
在以下情况下JarLauncher
和WarLauncher
,嵌套路径是固定的。JarLauncher
看BOOT-INF/lib/
和WarLauncher
看WEB-INF/lib/
和WEB-INF/lib-provided/
.
如果您想要更多,您可以在这些位置添加额外的罐子。
这PropertiesLauncher
看BOOT-INF/lib/
默认情况下,在您的应用程序存档中。
您可以通过设置名为LOADER_PATH
或loader.path
在loader.properties
(这是目录、档案或档案中的目录的逗号分隔列表)。
Starters清单
您需要指定适当的Launcher
作为Main-Class
属性META-INF/MANIFEST.MF
.
您要启动的实际类(即包含main
方法)应在Start-Class
属性。
以下示例显示了典型的MANIFEST.MF
对于可执行的 jar 文件:
Main-Class: org.springframework.boot.loader.launch.JarLauncher
Start-Class: com.mycompany.project.MyApplication
对于战争文件,如下所示:
Main-Class: org.springframework.boot.loader.launch.WarLauncher
Start-Class: com.mycompany.project.MyApplication
您无需指定Class-Path 清单文件中的条目。
类路径是从嵌套的 jar 中推断出来的。 |