如何将war从Nexus自动部署到Tomcat?
我有一个maven web项目,它在Nexus上成功地构建和部署(快照和发布版本)。我想知道Nexus中是否有功能/插件,可以选择发布的war并自动部署到远程Tomcat上?
我知道您可以使用maven- Tomcat -plugin将war部署到远程tomcat,但我想知道是否有其他解决方案。
请指点一下。
发布于 2014-03-22 06:34:57
通常,您会使用像Jenkins这样的CI工具来运行Maven构建,该构建会将您的War文件发布到Nexus中。然后Nexus将被你用来将战争推送到目标tomcat环境中的任何工具使用:

有很多很多的选择。
Jenkins构建后SSH脚本
从Jenkins运行一个构建后SSH任务,在目标tomcat服务器上执行以下操作:
curl "http://myrepo/nexus/service/local/artifact/maven/redirect?r=releases&g=myorg&a=myapp&v=1.1&e=war" \
-o /usr/local/share/tomcat7/webapps/myapp.war
service tomcat7 restart运行平台
我更喜欢使用Rundeck进行部署,因为它有一个Nexus plugin,提供了方便的可用版本下拉菜单。
还有一个用于Jenkins的Rundeck plugin,可用于编排CI流程,Jenkins执行构建,移交给Rundeck进行部署,然后Jenkins回调以运行集成测试。
厨师
我还使用chef,它可以用来以拉式方式自动部署软件。
artifact食谱直接支持Nexus,而application_java食谱使用了一种更通用的“从网址中拉”的方法,这种方法也很好用。
。。。。
这个列表还在继续,所以我希望这对你有所帮助。
发布于 2015-10-27 00:13:15
我们使用UrbanCode进行自动化部署,从Artifactory/Nexus检索war并部署到目标服务器。
发布于 2017-03-26 01:48:09
我使用了Nexus Rest-API,这些端点将工件下载到Jenkins工作区。
为了将Snapshot & Release部署到Tomcat,我们可以创建一个Jenkins参数化作业,并将参数传递给REST端点,也可以部署到像Tomact "Deploy WAR/EAR“Jenkins插件这样的服务器上。

我们可以参数化端点,并将其作为“构建”步骤的一部分,以及用于构建的“执行Shell脚本”选项。
wget --user=${UserName} --password=${Password} "http://192.168.49.131:8080/nexus/service/local/artifact/maven/redirect?r=releases&g=${GroupId}&a=${ArtifactId}&v=${Version}&e=${TypeOfArtifact}" --content-dispositionNexus的实际端点如下所示。
wget --user=admin --password=admin123 "http://localhost:8080/nexus/service/local/artifact/maven/redirect?r=snapshots&g=org.codezarvis.artifactory&a=hushly&v=0.0.1-SNAPSHOT&e=jar" --content-disposition
wget --user=admin --password=admin123 "http://localhost:8080/nexus/service/local/artifact/maven/redirect?r=releases&g=org.codezarvis.artifactory&a=hushly&v=0.0.5&e=jar" --content-disposition谢谢
-Sudarshan
https://stackoverflow.com/questions/22569710
复制相似问题