一、安装插件

(1)确保 IntelliJ IDEA 在 2018.1 或更高版本

打开 Settings - Plugins 搜索安装 Alibaba Cloud Toolkit

image-20210827162534081

(2) 查看对应工具版本

image-20210827161302232

去官网下载

得到

image-20210827161456965

image-20210827161536460

选择对应文件安装重启即可

二、配置环境

位置大概了解

image-20210827162731418
image-20210827162759571

image-20210827162828470

开始添加服务IP

image-20210827162919880

image-20210827163057757
image-20210827163220821

image-20210827163259086

这里可以存放常用的运行指令 —》linux 平时的操作shell指令

实战:
我准备了一个项目:
image-20210827163448649

准备的shell脚本 (注意windows上传的shell格式问题 doc格式改成unix格式)

deployJar.sh

#!/bin/bash
# jar包前缀
prefix="webSocket"
# jar包所在目录
backupsPath="/root/service/devresXL"
# shell运行日志所在目录
filePath="/root/service/devresXL/log/LogNameDATE.log"
# jar包运行所在目录 该目录下只允许存在一个运行jar包
runPath="/root/service/devresXL/run"
echo "BEGIN DATE:" $(date +"%Y-%m-%d %H:%M:%S") >> ${filePath}
runFileName=$(ls -lt ${runPath} | grep ${prefix}| head -n 1| awk '{print $9}')
newstFileName=$(ls -lt ${backupsPath} | grep ${prefix}| head -n 1| awk '{print $9}')
echo "可执行版本:${newstFileName}" >> ${filePath}
if [ ${runFileName} ];then
	PID=$(ps aux | grep ${runFileName} | grep -v 'grep' | awk '{print $2}')
    echo "可运行版本:${runFileName}" >> ${filePath}
    echo "开始查找当前版本${runFileName}的PID" >> ${filePath}
	if [ ${PID} ];then
      echo "当前版本${runFileName}的PID:${PID}" >> ${filePath}
      if [[ ${newstFileName} && ${runFileName} != ${newstFileName} ]];then
        echo "可执行版本:${newstFileName}" >> ${filePath}
        echo "开始关闭进程" >> ${filePath}  
        kill -9 ${PID}
        echo "当前版本${runFileName}未启动" >> ${filePath}  
        echo "开始从当前目录移除" >> ${filePath}
        cd ${runPath}
        rm -rf ${runFileName}
        echo "移除成功" >> ${filePath} 
      else
        echo "检测到最新版本已在运行中,无需替换" >> ${filePath}
      fi
    else
      echo "当前版本${runFileName}未启动" >> ${filePath}  
      echo "开始从当前目录移除" >> ${filePath}
      cd ${runPath}
      rm -rf ${runFileName}
      echo "移除成功" >> ${filePath}      
    fi
fi
if [ ${newstFileName} ];then
    echo "可执行版本:${newstFileName}" >> ${filePath}
	if [[ ! ${runFileName} || ${newstFileName} != ${runFileName} ]];then
		echo "开始执行新版本:${newstFileName}" >> ${filePath}
		echo "开始切换jar包存放路径:${backupsPath}" >> ${filePath}
		cd ${backupsPath}
		echo "开始复制运行jar包:${newstFileName},到目录:${runPath}下" >> ${filePath}
		cp ${newstFileName} ${runPath}
		echo "开始切换运行jar包所在路径:${runPath}" >> ${filePath}
		cd ${runPath}
		echo "开始执行运行jar包指令" >> ${filePath}
		nohup java -jar -Dorg.apache.tomcat.websocket.DEFAULT_BUFFER_SIZE=52428800 ${newstFileName}  >> nohup.out &
		echo "指令执行成功" >> ${filePath}
		echo "执行新版本:${newstFileName}完成" >> ${filePath}
   fi
fi
echo "END DATE:" $(date +"%Y-%m-%d %H:%M:%S") >> ${filePath}

预先创建好 相关目录

# jar包所在目录
/root/service/devresXL
# shell运行日志所在目录
/root/service/devresXL/log
# jar包运行所在目录 该目录下只允许存在一个运行jar包
/root/service/devresXL/run

将deployJar.sh放在/root/service/devresXL下

授权

chmod u+x deployJar.sh

回到idea

image-20210827164153157

创建配置

image-20210827164216609

image-20210827164256680

image-20210827164321537

开始配置

image-20210827164521110

image-20210827164554751

配置实时查看运行日志

image-20210827164748637

配置好之后的效果
在这里插入图片描述在这里插入图片描述

注意:

jar的名称是变化的

image-20210827165037373

image-20210827165024257

完结!!!撒花撒花!!!!

多谢观看,你的点赞。。收藏。。就是我创作的动力

Logo

更多推荐