【发布时间】:2010-11-18 09:52:10
【问题描述】:
我在 jboss 上部署了 2 个应用程序 app1.war 和 app2.war。这两个应用程序使用一个通用的 java 包,例如 myPackage。之前我的战争是这样的
================================================ ==========================
app[12].war/
-----web.xml
-----应用特定类(.class 文件之类)
-----appClass1.class
-----appClass2.class 等..
-----WEB-INF/
-----myPackage/(这只是war下的一个文件夹,不是jar包)
----------属于普通包的类,如
----------common_class1.class
----------common_class2.class
----------。
----------。
================================================ =========================
但这会产生问题,因为这两组通用类在两个 war 文件中都具有完全相同的名称等。所以我决定将通用包编译为 jar 文件并将其放在每个 war 文件的 WEB-INF/lib 中,现在我的 war 文件看起来像
================================================ ==============================
app[12].war/
-----web.xml
-----应用特定类(.class 文件之类)
-----appClass1.class
-----appClass2.class 等..
-----WEB-INF/
----------lib/
----------myPackage.jar(现在是一个jar包)
----------myPackage/
---------------属于通用包的类,如
---------------common_class1.class
---------------common_class2.class
---------------。
---------------。
================================================ ==============================
但是现在我的应用程序特定类需要使用 myPackage.jar 访问类文件抛出 java.lang.ClassNotFoundException 异常。
我在 Google 上搜索了 3-4 个令人沮丧的小时,但没有解决这个特殊问题。我可能在做一些非常错误的事情。有足够聪明的人可以帮帮我吗?
PS:我在 JBOSS 4.2.3 中部署我的战争
非常感谢。 ~马诺杰
【问题讨论】:
标签: jboss jar war classloader