我有一个包含许多依赖项部分的pom.xml。其中许多依赖jar都嵌入了junit jar,因此我想将它从每个jar的依赖项中排除,如下所示 -
<dependency>
<groupId>abcd</groupId>
<artifactId>xxdd</artifactId>
<version>0.0.0.1</version>
<exclusions>
<exclusion>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</exclusion>
</exclusions>
</dependency>
问题是,对于所有依赖项,我必须给这段代码部分排除junit jar吗?有没有办法从所有依赖项中排除全局?
由于
答案 0 :(得分:4)
您不必排除junit,它是使用测试范围定义的,因此不会作为传递依赖项传递给您的项目。如果你真的想要排除一个组件被包含在最终的war / ear中(但在编译期间可用),请参阅Is there a way to exclude a Maven dependency globally?
答案 1 :(得分:0)
<dependency>
<groupId>abcd</groupId>
<artifactId>xxdd</artifactId>
<version>0.0.0.1</version>
<scope>provided</scope>
</dependency>
您可以利用提供的,这将用于编译,但不会用于包装。有关依赖关系范围的更多信息:https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html
您无需指定多个依赖项,只需指定一次即可完成工作。