【发布时间】:2014-01-08 01:08:18
【问题描述】:
我有一个具有以下结构的 EAR
myWar1.war WEB-INF/lib/myJar.jar
myWar2.war
我希望 myWar2.war 能够加载 myJar.jar。 在 JBoss 7/EAP 6.x 中,您可以在 jboss-deployment-structure.xml 中添加这样的依赖项
<sub-deployment name="myWar2.war">
<dependencies>
<module name="deployment.myEar.ear.myWar1.war" />
</dependencies>
</sub-deployment>
我不知道 WAS 等价物。我尝试在 myWar2.war 的清单文件中添加一个类路径条目,但 WAS 似乎忽略了它。 如果我有一个清单条目,例如
类路径:myWar1.war/WEB-INF myWar1.war/WEB-INF/lib myWar1.war/WEB-INF/lib/myJar.jar
myWar1.war/WEB-INF 和 myWar1.war/WEB-INF/lib 添加到模块类路径,但 myWar1.war/WEB-INF/lib/myJar.jar 没有
我知道我可以将 jar 转换为 EAR 根级别的实用程序 jar,但我不想这样做。这是一个成熟的应用程序(第二次战争是新的)我不想过多地弄乱它。如果我可以使用理想的类路径条目解决依赖关系。
【问题讨论】:
-
我实际上预计清单类路径是相对于当前 WAR 文件的根目录的,所以我很惊讶前两个对你有用。 (我想知道您是否可能需要像 ../myWar1.war 一样尝试。)前两个似乎是一个错误,但不是第三个。什么版本的 WebSphere,什么修复级别?
-
@dbreaux
Class-Path总是相对于包含的存档,所以我相信语法是正确的,但这只是不支持。 -
使用 WAS 8.5 FP2 尝试 ../ 也不起作用
标签: jboss7.x classloader dependency-management ear websphere-8