wagon-maven-plugin实现自动打包部署到服务器
2019-01-08 08:22:44来源:博客园 阅读 ()
1.在maven中添加依赖
1 <!-- https://mvnrepository.com/artifact/org.codehaus.mojo/wagon-maven-plugin --> 2 <dependency> 3 <groupId>org.codehaus.mojo</groupId> 4 <artifactId>wagon-maven-plugin</artifactId> 5 <version>2.0.0</version> 6 </dependency>
2.在pom的build节点添加wagon-ssh
1 <extensions> 2 <extension> 3 <groupId>org.apache.maven.wagon</groupId> 4 <artifactId>wagon-ssh</artifactId> 5 <version>2.10</version> 6 </extension> 7 </extensions>
3.在plugins下添加配置
1 <plugins> 2 <!-- 执行的顺序 和命令的顺序有关系,我们这边使用第一个 先执行command 再进行发包 --> 3 <!-- mvn clean package wagon:sshexec wagon:upload-single --> 4 <!-- mvn clean package wagon:upload-single wagon:sshexec --> 5 <plugin> 6 <groupId>org.codehaus.mojo</groupId> 7 <artifactId>wagon-maven-plugin</artifactId> 8 <version>1.0</version> 9 <configuration> 10 <fromFile>target/${pack-name}</fromFile> 11 <url>scp://${remote-username}:${remote-passwd}@${remote-addr}${service-path}</url> 12 <displayCommandOutputs>true</displayCommandOutputs> 13 <commands> 14 <!-- >command>kill -9 `ps -ef |grep ${remote-name}|grep -v "grep" |awk '{print $2}'`</command --> 15 <command>rm -rf ${service-path}/*</command> 16 <command>${start-shell} ${remote-file}</command> 17 <command><![CDATA[netstat -nptl]]></command> 18 <command><![CDATA[ps -ef | grep ${remote-name} | grep -v grep]]></command> 19 </commands> 20 </configuration> 21 </plugin> 22 </plugins>
其中
<fromFile>为target下的war包 全路径名称 如 target/demo.war
<url>为服务器路径地址 如: scp://root:123456@192.168.1.96:22/usr/local/tomcat/demo/webapps
<commands>为在服务器执行的命令集合,<command>为执行的命令,这些命令需要根据具体的情况来写,比如删除war包,重启服务之类的操作
也可以跟我一样 通过参数化的方式来指定
1 <properties> 2 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 3 <service-path>/usr/local/tomcat/demo/webapps</service-path> 4 <pack-name>NACPortal_${package.environment}.war</pack-name> 5 <remote-addr>192.168.1.96:22</remote-addr> 6 <remote-username>root</remote-username> 7 <remote-passwd>123456</remote-passwd> 8 <remote-name>NACPortal</remote-name> 9 <start-shell>/usr/local/tomcat/start_tomcat.sh</start-shell> 10 <remote-file>/usr/local/tomcat/demo</remote-file> 11 </properties>
至此配置完成。
4.在终端或者pom.xml文件相同目录下执行以下mvn命令
最后需要通过执行以下命令来完成部署的最后一步
命令一: mvn clean package wagon:sshexec wagon:upload-single
命令二:mvn clean package wagon:upload-single wagon:sshexec
通过测试我发现 两个命令有执行顺序上的区别,命令一先执行配置指定的<commands>命令后进行上传war包,命令二相反;
具体使用哪个,还是要按照实际的命令情况使用,通常使用命令一即可
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:Java基础之java的四大特性
下一篇:Java8 Lambda表达式
- DES/3DES/AES 三种对称加密算法实现 2020-06-11
- SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 后 2020-06-10
- Spring Boot 实现定时任务的 4 种方式 2020-06-10
- JSP+SSH+Mysql+DBCP实现的租车系统 2020-06-09
- Java实现的三种字符串反转 2020-06-09
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash