EAR / lib文件夹中的jar可能吗?

我有一个具有以下结构的EAR:

myapp.ear
...META-INF
......application.xml
...lib
......common.jar
......specialBeanlib.jar
...myejb.jar
...mywar1.war
...mywar2.war

正如你所看到的,common.jar和specialBeanlib.jar位于EAR lib文件夹中。

myejb.jar包含服务类。
mywar1.war包含user-gui。
mywar2.war包含admin-gui。

ejb和war模块是由单独的maven项目构建的,并在application.xml文件中被引用。 文件specialBeanlib.jar在Web项目中作为提供的依赖项引用,并在ejb项目中作为正常的依赖项引用,因此它被存储在EAR lib文件夹中。 它明确地不应该是一个自己的ejb模块。

问题:我可以在文件specialBeanlib.jar中使用任何Bean,例如@ApplicationScoped Bean,因此可以通过@Injectmywar1.warmywar2.war访问它。


它应该没问题。 在编译期间,因为您在Maven中提供了作为依赖项的specialBeanlib.jar,所以在编译mywar1和mywar2模块期间,它应该出现在classpath中。 在运行期间,由于speicalBeanlib.jar位于war classloader的父类classloader中的ear lib文件夹中,所以bean类也应该可以正常加载。

链接地址: http://www.djcxy.com/p/82665.html

上一篇: Bean in jar inside EAR/lib folder possible?

下一篇: Maven : Remove duplicate jars from EAR