我是 Jboss Wildfly 8.2 实例我有一个webapp ROOT.war
和另一个OTHER.war
,我需要OtherXYZ.class
内的OTHER.war
类能够访问RootXYZ.class
。我已经在某个地方读到了EAR这可能是可能的,但我不知道怎么做。
ClassesVisibleToAllWars.jar
/ | \
(access)/ |(access) \(access)
/ | \
Root.war Other1.war Other2.war
/ | |
R.class O1.class O2.class
wildfly/modules
目录。我只能访问standalone/deployments/*
目录ClassesVisibleToAllWars.jar
的所有课程必须对R.class
,O1.class
和O2.class
可见,例如.war
文件,并且此行为必须保留我应该放ClassesVisibleToAllWars.jar
以实现该架构吗?
答案 0 :(得分:4)
你将无法在另一场战争中引用一个类。
如果你作为一个耳朵部署,你可以将RootXYZ.class拉出ROOT.war,然后将它放在一个jar中,该jar将位于两个战争的类路径中(通常位于耳朵的/ lib目录中)。我不确定在Wildfly中设置它所需的确切步骤,但它的'通常是META-INF / application.xml中的设置,类似于:
<library-directory>/lib</library-directory>
因为在上面你已经将公共类拉入jar文件中,我可能只是在每个war文件中包含这个jar作为构建过程的一部分。