【发布时间】:2014-01-28 16:33:24
【问题描述】:
如何获取包含在 pom.xml 中的依赖项的 tests.jars,而无需明确指定对测试范围的工件的依赖项。 例如:我的 pom.xml 包含“n”个依赖项,其中大部分还包含 tests.jar。当我用这个 pom 运行 mvn:test 时,我也想获取这些依赖项测试并运行它们(因为父 pom 是聚合器并且想要运行测试以确保集成不会破坏事情)。 如果我包含对这些“n”依赖项的测试工件的依赖项,并使用 maven-surefire-plugin 和 dependenciesToScan 组合(如下所示),我可以运行测试。 但这需要我每次为依赖构建测试 jar 或添加新依赖时编辑 pom.xml。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.15</version>
<configuration>
<dependenciesToScan>
<dependency>group:artifact1</dependency>
<dependency>group:artifact2</dependency>
</dependenciesToScan>
</configuration>
</plugin>
..
..
<dependencies>
<dependency>
<groupId>group</groupId>
<artifactId>artifact1</artifactId>
<version>version</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>group</groupId>
<artifactId>artifact2</artifactId>
<version>version</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
....
...
</dependencies>
如果不增加对测试工件的显式依赖,是否也可以自动提取和运行依赖项的测试(当然不是针对所有依赖项,而是针对少数与特定组 ID 匹配的依赖项)?
【问题讨论】:
-
您上次的编辑没有改善结果。粘贴 XML,选择它,然后使用编辑器上方的小“代码”按钮将其转换为代码。
-
我转向 gradle 来实现这一点。这是使用 ant JUnit 进行的简单任务配置。 stackoverflow.com/questions/21439082/… 有详细信息。
标签: maven maven-plugin