簡體   English   中英

將spring應用程序(JAR)打包在spring boot應用程序中

[英]packaging a spring application(JAR) inside a spring boot application

有打包為JAR(帶有Maven)的spring應用程序“ A”,應用程序“ A”的POM文件包含一些定義的特定maven依賴項。

在另一個打包成JAR的spring boot應用程序“ B”中,添加了應用程序“ A”的依賴關系,但是在執行“ B”時,它為應用程序“ A”中提到的依賴關系拋出了很少的ClassNotFound / NoClassDef錯誤。

注意-應用程序“ A”不是引導項目。 這是一個使用Maven的簡單Spring應用程序構建。

請協助。 如果需要共享任何代碼,請告訴我。 提前致謝。

Spring Boot jar並不是一個真正的jar,它的核心問題在這里。 為了方便起見,它僅打包成jar,但是如果您打開它(使用WinRaR / WinZip或任何其他程序),則會發現它沒有JAR的結構,例如,所有依賴項都包含在JAR中(參見BOOT-INF / lib)。

因此,最重要的是,如果A和B都是Spring Boot應用程序,則您不能在它們之間建立依賴關系,它將無法正常工作。

作為解決方案,請考慮提取應共享到第三個模塊“ C”中的代碼,該模塊將具有包裝罐,但其本身不會是spring boot應用程序。

然后讓A和B都依賴C並設置

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM