java - 在ear lib和war lib中保留相同版本的jar会产生问题吗?

标签 java jar jboss ejb classloader

我在 war/lib 和 Ear/lib 中保留相同版本的 jar。

您能否告诉我这是否会产生任何问题。

最佳答案

最好将公共(public)库放在 EAR/lib 中,因为 Web 模块可以访问 EAR/lib 上的 JAR。还有另一种选择,将公共(public)库放在应用程序服务器 ext/lib 文件夹中,但在发布 EAR 时必须单独发送这些库,这也不是一个好的做法。

BIG.ear
 +-- lib (contains common libs for all modules)
 +-- META-INF
 |    +-- application.xml (lists modules myWEB.war and myEJB.jar)
 |    +-- MANIFEST.MF
 +-- myEJB.jar
 |    +-- META-INF
 |    |    +- ejb-jar.xml
 |    
 |         +-- ...
 +-- myWEB.war
      +-- META-INF
      |    +-- MANIFEST.MF 
      +-- WEB-INF
      |    |+-- lib (3rd party libs only used by .war)
      |    +-- web.xml
      +-- index.html

关于java - 在ear lib和war lib中保留相同版本的jar会产生问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20275177/

相关文章:

java - Apache Ant 'Build.xml' > 由于 '@BeforeClass' 而失败

java - Spock + Spring Boot Web - 获取异常消息

java - MongoDB 中的精确匹配文档

java - getResource,图像宽度返回-1

java - Maven 添加运行时依赖

java - 如何将一个 EJB 3.1 注入(inject)另一个 EJB

java - JBoss中DB的动态切换

java - Java 在 Little Endian CPU 架构上运行时如何处理 Endianess?

java - 当 .jar 文件传输到另一台计算机时,文件编写器不工作

java - JBOSS Standalone 上的 war 服务器在哪里将其视为 Linux 上的主目录?