啟動可執行 Jar

Launcher 類是一個特殊的引導類,用作可執行jar包的主要入口點。它是你jar檔案中的實際 Main-Class,用於設定合適的 ClassLoader 並最終呼叫你的 main() 方法。

有三個啟動器子類(JarLauncherWarLauncherPropertiesLauncher)。它們的作用是從目錄中的巢狀jar檔案或war檔案中載入資源(.class檔案等),而不是從明確在classpath中的載入。對於 JarLauncherWarLauncher,巢狀路徑是固定的。JarLauncherBOOT-INF/lib/ 中查詢,而 WarLauncherWEB-INF/lib/WEB-INF/lib-provided/ 中查詢。如果需要,你可以在這些位置新增額外的jar包。

PropertiesLauncher 預設在你的應用程式歸檔檔案中的 BOOT-INF/lib/ 中查詢。你可以透過設定名為 LOADER_PATH 的環境變數或在 loader.properties 中設定 loader.path(這是一個以逗號分隔的目錄、歸檔檔案或歸檔檔案內目錄列表)來新增額外的位置。

啟動器清單

你需要將合適的 Launcher 指定為 META-INF/MANIFEST.MFMain-Class 屬性。你想要實際啟動的類(即包含 main 方法的類)應該在 Start-Class 屬性中指定。

以下示例展示了一個典型的可執行jar檔案的 MANIFEST.MF

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

對於war檔案,如下所示

Main-Class: org.springframework.boot.loader.launch.WarLauncher
Start-Class: com.mycompany.project.MyApplication
你無需在清單檔案中指定 Class-Path 條目。Classpath是根據巢狀的jar包推匯出來的。
© . This site is unofficial and not affiliated with VMware.