避免 war 文件中的重复 jar

Avoiding duplicate jars in a war file

我有一个名为 A.jar 的 Jar,它依赖于一些 jar,例如 A1.jar、A2.jar 和 A3.jar。现在在 pom 中提到那些依赖项,我已经构建了 jar 文件。 现在 war 文件 B1.war 依赖于 A.jar。所以我在 war 的 pom 中提到了相同的内容,生成了 war 并且它工作正常。问题出在B.war的lib文件夹下,A.jar可用。还有 A1.jar、A2.jar 和 A3,jar 也可用(即复制)。如何避免这种情况?

  • 首先可以在Pom->Dependency中看到一个jar的依赖 等级制度。
  • 其次,如果您使用的是jboss,可能有些依赖项是 已经在 jboss,所以尝试使用 < scope >provided < /scope> 在你的依赖项中(所以它只需要 不在 jboss 中的依赖项)。
  • 第三,如果第二点没用,尝试在你的依赖中添加 , 有其他依赖关系:

    < exclusions>
    < groupId >org.slf4j< /groupId >
    < artifactId> slf4j-log4j12 < /artifactId >
    < /exclusion>