我有一个用于授权的 JAR 文件。我的每个 WAR 文件都需要它。所有 WAR 文件都打包在一个 EAR 文件中。我是否必须在每个 WAR 中重复这个通用 JAR,或者是否有通用库的结构?
所以我的例子看起来像这样......
big.ear
- META-INF
- MANIFEST.MF
- application.xml
- appl1.war
- META-INF
- MANIFEST.MF
- WEB-INF
- web.xml
- lib
- unique1.jar
- unique2.jar
- unique3.jar
- common1.jar
- jsps/html/etc
- appl2.war
- META-INF
- MANIFEST.MF
- WEB-INF
- web.xml
- lib
- unique3.jar
- unique4.jar
- common1.jar
- jsps/html/etc
- appl3.war
- META-INF
- MANIFEST.MF
- WEB-INF
- web.xml
- lib
- unique5.jar
- common1.jar
- jsps/html/etc
我的每个WAR应用程序都可以看到common1.jar,但是它在EAR中出现了3次。
我可以将 common1.jar 放在 EAR 结构中的什么位置,以便 appl1、appl2 和 appl3 可以看到它而无需重复 3 次?
最佳答案
标准方法是将 JAR 放在 EAR 的根目录下,并在 WAR 的 META-INF/MANIFEST.MF
的 Class-Path
属性中引用它们>。参见 this article .
检查容器的文档以确保它受支持。
关于java - 公共(public) JAR 是否必须在 EAR 中的 WAR 中重复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/450965/