我正在尝试制作一个 mojo,它可以从具有我所做的特定注释的所有模块中获取所有单元测试。问题是我无法从任何模块访问单元测试。
模块结构如下所示:
|--ModuleA (depends on Module D)
|--ModuleB (depends on Module D)
|--ModuleC (depends on Module D)
|--ModuleD (the mojo)
问题是当 mojo 运行时如何访问或检索每个模块的单元测试类。
最佳答案
自从您告诉我们模块的依赖关系以来,更新了响应。
最好的方法是:
- 使用maven构建的模块A、模块B、模块C
- 生成测试 jar :添加到您的 pom
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>test-jar</id>
<phase>package</phase>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
moduleD 依赖于 moduleA.jar、moduleB.jar、moduleC.jar 和 moduleA-test.jar、moduleB-test.jar、moduleC-test.jar
为每个模块添加 moduleE 的 pom.xml :
<dependency> <groupId>com.rizze</groupId> <artifactId>moduleA</artifactId> <version>1.0.0</version> </dependency> <dependency> <groupId>com.rizze</groupId> <artifactId>moduleB</artifactId> <version>1.0.0</version> </dependency> <dependency> <groupId>com.rizze</groupId> <artifactId>moduleC</artifactId> <version>1.0.0</version> </dependency>
模块 E 在这里按照您想要的顺序调用模块 A、B、C、D 的所有测试。模块 E 正在集成所有模块,以便执行所有测试(根据您的要求)。
关于java - java中使用maven解决依赖关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37060371/