Pau*_*est 32 nexus maven jenkins
我们正在使用maven.我想设置基础架构,以便自动构建的工件将转到Nexus存储库.然后他们可以被开发人员使用.
我已经为我们的项目设置了一份Jenkins工作.我在同一台服务器上安装了Nexus.
在开发人员的PC上,我将默认maven设置复制到添加此部分的C:\ Users {user} .m2\settings.xml.参考文献:
<mirror>
<!--This sends everything else to /public -->
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url>http://myserver:8081/nexus/content/groups/public</url>
</mirror>
Run Code Online (Sandbox Code Playgroud)
(我只是通过Nexus书来关注Repository Management)
我的下一步应该是什么?詹金斯应该有工作mvn install吗?如何为公司工件创建Nexus存储库?
Rya*_*art 17
要将工件部署到Nexus,您需要在pom中包含distributionManagement部分.Nexus附带了已为快照和版本设置的特定存储库.您应该为每个提供正确的路径,以便maven将快照和发布工件部署到正确的存储库.然后,每当您部署工件时 - 通常使用mvn deploy或使用maven发布插件,工件将在那里部署.Nexus默认启用了写入身份验证,因此您需要确保将具有正确凭据的服务器部分添加到将要部署工件的任何人的settings.xml中.Jenkins可以像任何其他用户一样对待.如果你有它deploy的构建,那么每个构建都将部署到Nexus.还有一个用于部署工件的构建后操作,以防您希望稍后在Jenkins作业中发生.
Ste*_*own 17
我不需要对我的项目pom.xml进行任何更改.相反,在jenkins"Post-build Actions"中,我选择了"将工件部署到Maven存储库",然后选择"Advanced"并将Repository URL设置为http://nexusserver:8081/nexus/content/repositories/releases,并将Repository ID设置为deploymentRepo.
在~/.m2/settings.xml对詹金斯机加我
<settings>
<servers>
<server>
<id>deploymentRepo</id>
<username>deployment</username>
<password>deployment123</password>
</server>
</servers>
...
</settings>
Run Code Online (Sandbox Code Playgroud)
Pau*_*est 12
更新 pom.xml
<distributionManagement>
...
<repository>
<id>deploymentRepo</id>
<name>Internal Releases</name>
<url>http://nexusserver:8081/nexus/content/repositories/releases</url>
</repository>
...
</distributionManagement>
Run Code Online (Sandbox Code Playgroud)
然后为maven ~/.m2/settings.xml添加(这是Nexus中的默认部署用户)
<server>
<id>deploymentRepo</id>
<username>deployment</username>
<password>deployment123</password>
</server>
Run Code Online (Sandbox Code Playgroud)
然后 mvn deploy
然后可以在任何项目中使用已部署的工件,就像标准工件一样.在这种情况下添加到pom.xml
<!-- company repositories -->
<repository>
<id>deploymentRepoReleases</id>
<name>Releases (Nexus)</name>
<url>http://nexusserver:8081/nexus/content/repositories/releases/</url>
</repository>
<repository>
<id>deploymentRepoSnapshots</id>
<name>Snapshots (Nexus)</name>
<url>http://nexusserver:8081/nexus/content/repositories/snapshots/</url>
</repository>
Run Code Online (Sandbox Code Playgroud)
更新:稍后我们离开了Snapshot存储库并使用maven-release-plugin它只需要发布类型的存储库.
| 归档时间: |
|
| 查看次数: |
39621 次 |
| 最近记录: |