我有一个像这样的项目结构:
- parent-project : pom.xml
+ child-project: pom.xml
+ child-project-2: pom.xml
我想将子项目的工件上载到Nexus,因此在子项目的pom.xml文件中,我定义了:
<distributionManagement>
<repository>
<id>nexus</id>
<url>http://my-repo:8081/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>nexus</id>
<url>http://my-repo:8081/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
当我从eclipse中使用mvn clean deploy
运行子项目时,子项目的jar文件将按预期方式上传到 my-repo nexus存储库。
在Jenkins中,我有一个配置为 parent-project pom.xml 的作业。现在,我想在jenkins完成构建过程之后,将我的子项目的工件发布到联系。到目前为止,我所做的是:
让我感到困惑的是:
child-project/target/child-project-0.0.1-SNAPSHOT.jar
,但没有成功。詹金斯提出了例外java.io.IOException: child-project / target / child-project-0.0.1-SNAPSHOT.jar不存在
mvn clean deploy
直接配置作业构建,以将工件推向联系?如果是,那么我不再需要Nexus Repository Manager Publisher吗?以及如何像在/.m2文件夹中的setting.xml中那样配置nexus服务器的身份验证?有人可以帮我澄清以上几点吗?非常感谢你!
答案 0 :(得分:0)
您不需要插件 您可以在工作中从外壳运行maven clean install deploy 我正在使用管道语法,因此它是实际的代码,但是您可以使用jenkins ui 创建一个外壳步骤