1. 首先安装插件Alibaba Cloud Toolkit

安装成后,会提示重启IDEA。

IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_Alibaba Toolkit


我这里已经显示安装过插件了。

2. 打开插件工具 Tool >> Alibaba Cloud >> Deploy to Host

配置远程服务器账号密码

IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_Cloud_02


首次打开显示如下,需要添加Host,点击后面的 Add Host

IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_Alibaba Toolkit_03


IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_IDEA_04


IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_Alibaba Toolkit_05


添加完成。再次打开 ​​Tool >> Alibaba Cloud >> Deploy to Host​​ 配置

IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_自动部署_06


这里自动新增了一个配置如上图,可以根据自己的项目打包自定义适配:

IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_IDEA_07


多模块项目可以灵活配置,这里分步执行maven命令,先执行整个项目的clean,然后执行构建

IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_Cloud_08


这里构建之后,会跑出一个异常:

IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_IDEA_09


但是此时并不影响maven构建的结果,可以看到已经正常执行了前两步:clean 和 package。

上面只是定义了一个maven构建的任务,接着需要配置上传任务,上传文件到服务器上。

IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_自动部署_10


IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_IDEA_11


IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_Alibaba Toolkit_12


这里配置了上传文件,选择待上传的文件自动挨个执行了:

IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_IDEA_13


不过这里上传文件后,执行脚本的功能,我这里没有配成功,最后还是使用控制台远程ssh连接,执行脚本了。

IDEA使用 Alibaba Cloud Toolkit 插件 自动打包部署maven项目至服务器_Alibaba Toolkit_14


手动ssh连接远程服务器。

异常1:[ERROR] srcPath does not exist

[ERROR] srcPath does not exist. [D:\Git\huaun\TJ_XM\tj_web_backend_v1.0.3\tj_xm\tj-web-backend\target\parent-web-2.0.pom]
Reference guide:https://yq.aliyun.com/articles/676151

原因是因为Cloud Toolkit默认去 target 目录下找根据artifactId和version和packaging拼接成项目名字。

这里贴一个我这里使用部署脚本:​​deploy_cavd_manager.sh​​ ,功能就是解压部署包后,执行另外的脚本。

#!/bin/bash

# this is a script to deploy cavd_manager .

fileName=cavd-manager-server-2.0

echo '=================== start deploy cave_web======================== '

tar -zxvf ${fileName}.tar.gz $1

if [ $? -eq 0 ]
then
echo "============ 解压完成......=========="
else
echo "============ 解压失败......=========="
exit 1
fi

echo $fileName

cd ${fileName}/bin
ls
dos2unix restart.sh
sh restart.sh

echo '=================== deploy cave_web success.......=============='

新建脚本后,需要给脚本新增执行权限:​​chmod u+x deploy_cavd_manager.sh​

最后使用 ​​sh deploy_cavd_manager.sh​​ 执行脚本。