【发布时间】:2010-05-03 16:27:39
【问题描述】:
是否可以创建一个 pom 文件,以便在另一个 pom 中使用它来添加测试范围依赖项?
所以在模块 E 的 pom.xml 中我有:
<dependencies>
<dependency>
<groupId>com.example</artifactId>
<artifactId>D</artifactId>
<type>pom</type>
<scope>test</scope>
</dependency>
</dependencies>
因此,如果 D 的 pom.xml 包含对工件 A、B、C 的依赖项,那么这些工件在 E 的测试的编译和执行类路径中。
注意:我想要这样一个 pom,而不是依赖于常规依赖解析的原因是我使用 maven-jar-plugin:test-jar 创建了一个测试 jar,并且使用该 jar 作为依赖导致 maven 不使用它的传递依赖。 (见http://jira.codehaus.org/browse/MNG-1378)
更新:这对我不起作用(可能是因为我试图将它用于测试范围):http://www.sonatype.com/books/mvnref-book/reference/pom-relationships-sect-pom-best-practice.html
【问题讨论】:
-
你在 D 的 pom 中为 A、B、C 使用了什么范围?
-
“help:effective-pom”是否显示 D 中的工件在测试阶段处于活动状态?
-
不确定“在测试阶段处于活动状态”是什么意思,但运行该命令确实会显示上面输入的依赖关系。