Maven在Test-Jar中找不到Package

时间:2013-04-11 13:24:23

标签: java eclipse maven testing

我正在尝试在测试期间在另一个maven模块中使用测试jar依赖项。就像在这个问题(Maven test dependency in multi module project)和maven指南中一样,我在模块A中放置了一个测试jar目标,并在模块B中对它进行了依赖,我希望在我的模块中使用A中的一些类。测试。 Eclipse正确识别我的所有类,当我从项目根运行干净安装,然后在模块B中运行mvn dependency:tree时,我看到模块A.

然而,当我运行mvn clean install时,maven抱怨

... package 'my.package.in.module.A' does not exist

我的项目结构是

reactor
--module A
--module B

Pom A:

  ...
  <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>
...

Pom B:

 ...
<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>,并在不使用它的情况下使其工作。

1 个答案:

答案 0 :(得分:1)

有一种解决方法。使用-DskipTests代替maven.test.skip。该 第二个也跳过了测试的汇编,所以测试罐 没有被创造。

请参阅http://maven.apache.org/plugins/maven-surefire-plugin/examples/skipping-test.html