Maven测试依赖项:如何将兄弟项目的依赖项转换为依赖项目的测试范围

时间:2013-03-06 18:15:10

标签: maven testing dependencies

我有一个结构为

的多模块maven项目
main/
  core/
  interface/

其中接口依赖于核心生成的工件。

接口正确编译,打包和安装。但是,在界面中运行测试时,由于无法解析核心中的依赖关系而失败。

接口不依赖于核心中的测试类本身,只需编译核心 pom.xml文件中定义的范围maven依赖项。

我做了一次痛苦的尝试,我将核心中的每一个编译依赖项声明复制到接口 pom.xml中并将它们全部复制

<scope>test</scope>

。这有助于测试,但打破了安装。

界面中修复这些测试的依赖项解析的最佳方法是什么?

以下是运行接口 maven测试目标时未解决的编译范围依赖关系的示例。

core / pom.xml摘录:

<dependency>
    <groupId>com.sun.faces</groupId>
    <artifactId>jsf-api</artifactId>
    <version>${jsf-version}</version>
</dependency>
<dependency>
    <groupId>com.sun.faces</groupId>
    <artifactId>jsf-impl</artifactId>
    <version>${jsf-version}</version>
</dependency>

interface / pom.xml摘录:

<dependency>
  <groupId>com.mycompany</groupId>
  <artifactId>core</artifactId>
  <version>1.0-SNAPSHOT</version>       
</dependency>

0 个答案:

没有答案