我是个新手。 我的测试项目依赖于模块项目(extended-java-client)。 我需要在模块路径上运行“mvn clean package”,它给了我扩展的java-client-Jar。
然后,我需要运行“mvn clean install test”来运行测试项目。 但它不起作用,它没有找到模块。 (我已经将模块/父标签添加到pom.xml文件中)
有什么想法吗? 提前致谢
这是我项目的结构:
Project A
*Extended-java-client(Module)
*pom.xml (jar file)
*src(the test classes)
*pom.xml
延伸型>的pom.xml
<parent>
<groupId>project name</groupId>
<artifactId>project name</artifactId>
<version>1.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath> // path to main pom
</parent>
项目 - &GT;的pom.xml
<modules>
<module>extended-java-client</module>
</modules>
答案 0 :(得分:0)
构建extended-java-client
时,您应该使用运行$ mvn clean install
而不是$ mvn clean package
原因:package
创建jar但将其保留在extended-java-client/target/
目录中,以便jar文件仅对该项目可见。
调用install
将jar复制到Maven称之为&#34;本地回购&#34;以便其他项目(例如您的测试项目)可以访问它。
希望有所帮助。
答案 1 :(得分:0)
&#34;它不起作用&#34; 你能提供的错误信息是什么?
我建议使用Standard Directory Layout,尤其是从Maven开始时。
但是,您不必运行mvn clean install test
。 test
阶段会在install
阶段之前(以及package
阶段)自动执行。
请参阅Introduction to the Build Lifecycle, Default Lifecycle:&#34;这些构建阶段按顺序执行以完成默认生命周期。&#34;