从快照存储库下载WAR并使用mvn部署到本地JBoss
问题内容:
目前,我将war
with 部署jboss:hard-deploy
到我的JBoss 6 AS。这工作正常,但我必须从SVN检出项目并将其打包。
在war
已经上传到我们詹金斯内部的快照库,这将是很好,如果我可以从该库下载测试服务器上,并直接使用maven其部署到JBoss。
这个问题与从存储库到远程服务器的Maven部署工件战争有关,但我认为答案不正确(请参阅此处的评论)。
问题答案:
理想情况下,您希望设置Jenkins作为CI构建的一部分部署到测试服务器。
或者,如果要在要部署到的服务器上手动运行脚本,则可以设置特定的脚本pom.xml
来执行此任务。首先设置依赖插件以下载您的war:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>my-group</groupId>
<artifactId>my-web-archive</artifactId>
<version>my-vesion</version>
<type>war</type>
<destFileName>my-web-archive.war</destFileName>
</artifactItem>
</artifactItems>
<outputDirectory>${project.build.directory}</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
用组ID,工件ID和版本代替WAR文件的相应属性。接下来配置JBoss插件以部署下载的WAR:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jboss-maven-plugin</artifactId>
<version>1.5.0</version>
<configuration>
<jbossHome>/opt/jboss-6</jbossHome>
<serverName>all</serverName>
<fileName>${project.build.directory}/my-web-archive.war</fileName>
</configuration>
</plugin>
然后,您应该能够从内部存储库下载工件,并使用以下命令将其部署在本地运行的JBoss容器中:
mvn package jboss:hard-deploy