簡體   English   中英

springboot應用程序打包為庫,在另一個springboot應用程序中使用

[英]Springboot application packaged as a library to be used in another springboot application

我的場景如下:

  1. 我有一個 libraryFile 說“LIB”,它有一些業務邏輯
  2. 我有一個使用此 LIB 作為依賴項的 springboot 應用程序 (APP1)
  3. 我有另一個 springboot 應用程序(APP2),它需要同時使用 APP1 和 LIB 的代碼,所以我指的是 LIB 和從 APP1 中的類創建的 jar

當我啟動 APP2 時,它啟動正常。 但是當我使用 http 請求進行測試時,我得到了 LIB 中某些類的 NoClassDefFoundError。

有沒有一種方法可以很好地實現這種情況。

代碼流程:Controller(APP2)->Service(APP@)->Service(APP1)->業務邏輯類(LIB)

更好的設計:-

  1. 拉出您在 APP1 中的公共代碼並將其放置在新的 LIB 或您已有的相同 LIB 中。
  2. 將新/舊 LIB 添加為兩個應用程序的依賴項,並從那里使用公共代碼。

-或者-

獨立運行這兩個服務,並在這兩個服務之間添加一個 http 調用。

通常當你想在微服務架構中擁有庫時,它們應該是普通的 Java 類,以便它們可以在任何地方使用。

當前設置可能無法正常工作的一個原因是 APP1 中的服務可能沒有按預期注入所需的依賴項。

暫無
暫無

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

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