我正在尝试在测试期间在另一个 maven 模块中使用 test-jar 依赖项。因此,就像在这个问题(多模块项目中的 Maven 测试依赖项)和 maven 指南中一样,我在模块 A 中放置了一个 test-jar 目标,并将依赖项放在模块 B 中,我想在其中使用 A 中的一些类在我的测试中。Eclipse 可以正确识别我的所有类,当我从项目根目录运行全新安装,然后mvn dependency:tree
在模块 B 中运行时,我看到模块 A。
但是,当我运行时mvn clean install
,maven 抱怨说
... package 'my.package.in.module.A' does not exist
我的项目结构是
reactor
--module A
--module B
波姆一个:
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
...
波姆乙:
...
<dependency>
<groupId>com.company.moduleA</groupId>
<artifactId>module-A</artifactId>
<version>moduleA-version</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
出于隐私考虑,我省略了版本/工件/等,但它们匹配正确。
我错过了什么吗?
编辑:这可能不是这个问题的正确解决方案,但我只是删除<type>test-jar</type>
了它并让它在不使用它的情况下工作。