簡體   English   中英

如何從另一個EAR文件訪問來自一個EAR文件的java庫?

[英]How java libraires from one EAR file could be accessed by another EAR file?

我有兩個.Ear文件,即A.EAR和B.EAR。 第一個文件是我的應用程序(大約1.5 MB),第二個文件包含所有需要的庫,如Hibernate,log4j等(大約70 MB)。 如何在weblogic上部署它們,以便我在A.EAR中的代碼使用B.EAR中的庫?

  1. 我無法將它們打包成一個.EAR文件,因為我需要每周通過電子郵件發送我的應用程序。 在發送電子郵件時,我只發送A.EAR文件。
  2. 我不能將使用過的庫放在weblogic的lib文件夾中,因為其他應用程序使用不同的庫版本。

編輯:

找到正確的答案后,似乎SO上的這個Q在某種程度上是相關的。

您可以將B.ear定義為共享應用程序庫並從A訪問它

http://docs.oracle.com/cd/E17904_01/web.1111/e13706/libraries.htm#i1065356

這可能不是您問題的直接答案,但我會根據“每周通過電子郵件發送應用程序”的需要,設計一個實際可部署應用程序的結構(即將其拆分為多個EAR文件)。

對我來說,為一個應用程序提供2個單獨的EAR文件似乎很危險。 我知道你說的是B.EAR包含不變的庫(Hibernate,log4j)。 但是,通過在A.EAR中使用它們,它們會繼承成為您的應用程序的germaine。 換句話說,你的應用程序真的是A + B ...... A.EAR不能沒有B.EAR。

相反,您是否可以設置某種修訂/源代碼控制存儲庫(SVN,Git等)並使用Ant / Ivy或Maven來管理您的依賴項?

這樣,任何需要應用程序副本的人都可以訪問存儲庫,下載源代碼,允許Ant / Ivy解析依賴關系和構建。

暫無
暫無

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

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