Maven测试jar包括依赖项

时间:2014-12-02 15:43:09

标签: maven maven-jar-plugin

我的项目分为几个模块,其中一个是常见的,应该用于其他模块。

在这个模块中有一些TestUtils,我希望能够从其他模块中使用它。

我的库似乎没有被添加到测试jar中。我怎样才能做到这一点?

+ common
++ lib
++ src
+++ test
++++ java
++++ resources
+ pom.xml

我的pom.xml包含一些我通过系统路径包含的库,例如:

<dependency>
    <groupId>com.ibm</groupId>
    <artifactId>com.ibm.disthub2.dhbcore</artifactId>
    <version>5.3.07</version>
    <scope>system</scope>
    <systemPath>${basedir}/lib/dhbcore.jar</systemPath>
</dependency>
...
<build>
    <plugins>
        <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>
</build>

1 个答案:

答案 0 :(得分:0)

简单回答:不可能。 test-jar仅适用于src/test/java包含src/test/resources文件夹下的已编译类,但不适用于补充jar文件。

除了使用系统范围通常是一个坏主意。 最好将这些罐子放入公司的nexus并将其用作通常的依赖。 Maven项目中的lib文件夹通常是构建气味的指示符,应该避免使用。

BTW:你为什么要使用maven-jar-plugin这样的旧版本(2008版2.2)。今年Current version版本2.5。