0

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

在这个模块中有我希望能够从其他模块中使用的 TestUtils。

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

+ 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>
4

1 回答 1

0

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

除此之外,使用系统范围通常是一个坏主意。最好的办法是将这样的 jars 放入 company nexus 并将其用作通常的依赖项。Maven 项目中的 lib 文件夹通常是构建异味的指标,应避免使用。

顺便说一句:你为​​什么使用这么旧版本的 maven-jar-plugin(2008 版本 2.2)。从今年开始的当前版本为 2.5 版。

于 2014-12-02T16:06:13.000 回答