fas*_*ser 3 nexus maven jenkins
我有一个 Web 项目,在 jenkins 上成功构建后,我将其部署到 Nexus 存储库。目前在项目中,pom.xml我有以下配置,其中 Nexus 存储库的主机和端口是硬编码的:
<profiles>
<profile>
<id>deploy-snapshot</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<distributionManagement>
<snapshotRepository>
<id>snapshots</id>
<name>Repository for snapshots</name>
<url>http://ip1:port1/nexus/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
</profile>
</profiles>
Run Code Online (Sandbox Code Playgroud)
我的目标是覆盖 jenkins 中的 nexus url,而不对 pom.xml 进行任何更改,因为目前 pom.xml 中的配置用于另一个无法重新配置的环境。
考虑到将来我将为负责部署 npm 包的其他工作做类似的事情,最好知道可以在 jenkins 上以哪种方式完成。
我研究了以下 jenkins 插件https://wiki.jenkins.io/display/JENKINS/Nexus+Artifact+Uploader,但不确定这是否是真正的插件,也不确定该插件是否适合 zip 存档npm 构建。
这是 2008 年提出的要求(!),问题为295:“distributionManagement.site.url 可从命令行配置”
对于您的情况,请检查传递该属性altDeploymentRepository是否有帮助:
-DaltDeploymentRepository=...
Run Code Online (Sandbox Code Playgroud)
更准确地说,如“ Maven 部署:使用以下方式部署-DaltDeploymentRepository”
-DaltDeploymentRepository=releaseRepository::default::http://your.repo.url
Run Code Online (Sandbox Code Playgroud)
“ defaut”是maven2布局(“ legacy”是maven 1)