参考 这篇文章

https://www.jianshu.com/p/fc4b1e945b0e

然后附上自己的实践内容
1 安装好插件 Alibaba Cloud Toolkit
2 dea菜单栏–> Tools --> Alibaba Cloud --> Alibaba Cloud View --> Host 添加自己要发布的服务器信息




阿里巴巴牛逼插件 项目部署_java


image.png


3 在服务器的相应目录编写两个脚本,一个是发布项目打包之前,对已存在的jar包的备份 cp.sh.另一个是对当前服务的停止,然后再次启动的脚本 start.sh

#!/bin/cp.sh
current=`date "+%Y-%m-%d %H:%M:%S"`  
timeStamp=`date -d "$current" +%s`   
#将current转换为时间戳,精确到毫秒  
currentTimeStamp=$((timeStamp*1000+`date "+%N"`/1000000)) 
echo test.jar$currentTimeStamp
# 备份的jar包名称
mv /opt/test/test.jar /opt/test/test.jar$currentTimeStamp
#!/bin/start.sh
# java环境变量配置文件
source /etc/profile
# 打包的路径以及jar包名称
nohup java -jar /opt/test/test.jar > nohup.out 2>&1 &

4 配置IDEA中插件的id与sercret
file>>setting>>Alibaba Cloud Toolkit>>Accounts>>添加 id 与sercret



阿里巴巴牛逼插件 项目部署_linux_02


image.png


5 配置打包细节
Tools >> Alibaba Cloud>>Deply to Host



阿里巴巴牛逼插件 项目部署_maven_03


image.png



阿里巴巴牛逼插件 项目部署_java_04


image.png


点击Apply保存 其中sh /opt/test/cp.sh
/opt/test/cp.sh 为服务器上的命令所在路径 cp.sh同样如此

6 Run
信息

[INFO] user custom command:{ source /etc/profile;sh /opt/test/cp.sh }
1616485538115
[INFO] IDE Version:IntelliJ IDEA 2019.3.3
[INFO] Alibaba Cloud Toolkit Version:2021.3.1
[INFO] started transferring file test-0.0.1-SNAPSHOT.jar (66772117 bytes)
[##################################################] 100% (66772117/66772117)
[INFO] Upload Local File success
[INFO] Target Deploy Host:{ 47.93.227.23 }
[INFO] user custom command:{ source /etc/profile; cd /opt/test; sh /opt/test/start.sh }
[INFO] Finished at: 2021-03-23 15:46:21
[INFO] File Upload Total time: 43.371 s
open terminal

先执行 备份
然后打包
然后运行启动命令

===================================================
至此,大功告成了

ps: 如果当前工程为多模块工程,仅仅只需要发布其中的某一个子模块
可以添加两个mvn任务:

任务一、在父工程里执行"clean install",
任务二、在需要发布的子模块里执行"clean package"
点击上面的号,选择“Run Maven Goal”:



阿里巴巴牛逼插件 项目部署_maven_05


image.png


在弹出的界面上,可以点击文件夹小图标来选择模块,在"Command line"上填写mvn goal:



阿里巴巴牛逼插件 项目部署_java_06


image.png


有了这两个任务就ok,一个是原本的整体打包项目,一个是要发布的子项目(module)
=================================================

除此之外,还有意外收获



阿里巴巴牛逼插件 项目部署_centos_07


image.png


点击终端命令, 可以相当于直接用xshell脚本链接到了linux 服务器,炸炸炸!!!!



阿里巴巴牛逼插件 项目部署_centos_08


image.png