Maven,排除junit

时间:2016-01-27 01:32:51

标签: java maven junit

我在pom.xml中排除了junit depdendency的hamcrest依赖。 当我在运行"mvn package""mvn dependency:tree"时比较日志时,在删除hamcrest依赖之前和之后我都没有看到任何差异。

这是排除传递依赖的部分。在运行排除部分之前和之后,我在哪里可以找到差异?我也查看了.m2目录

<dependencies>
    <dependency>
       <groupId>junit</groupId>
        <artifactId>junit</artifactId>
       <version>${junit.version}</version>
       <scope>test</scope>
       <exclusions>
         </exclusion>
            <groupId> org.hamcrest</groupId>
            <artifactId>hamcrest</artifactId>
          </exclusion>
      </exclusions>
</dependency>

1 个答案:

答案 0 :(得分:0)

正如Kiril S.所说,显示的pom部分无效,因为拼写错误,执行任何任务时都会导致错误。

排除错误,因为它匹配junit声明的任何依赖项。 运行mvn dependency:tree应显示以下内容:

[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ my-app ---
[INFO] com.mycompany.app:my-app:jar:1.0-SNAPSHOT
[INFO] \- junit:junit:jar:4.11:test
[INFO]    \- org.hamcrest:hamcrest-core:jar:1.3:test

如您所见,junit的实际依赖性为

<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>

如果你在pom中解决了这个问题,mvn dependency:tree的调用将导致预期的排除。

[INFO] com.mycompany.app:my-app:jar:1.0-SNAPSHOT
[INFO] \- junit:junit:jar:4.11:test
[INFO] ------------------------------------------------------------------------