该方法通过远程服务器上maven命令构建,再启动
1、流程脚本
#!/bin/sh
#杀死原来的java进程
sh /home/circles/circles-server/sh/stop-circles-server.sh
#进入代码文件夹,必须有git管理
cd /home/circles/src_rep/circles-simple
#更新代码
git pull --ff-only
#清理原来的jar包重新打包
mvn clean install -Dmaven.test.skip=true
cd ~
#删除原来的备份jar包
rm -f /home/circles/circles-server/jar/circles-simple.jar.bak
#备份上个版本
cp /home/circles/circles-server/jar/circles-simple.jar /home/circles/circles-server/jar/circles-simple.jar.bak
#把新版本复制过来
cp /home/circles/src_rep/circles-simple/target/circles-simple.jar /home/circles/circles-server/jar/circles-simple.jar
#后台运行
sh /home/circles/circles-server/sh/run-circles-server.sh
2、启动脚本
#!/bin/bash
JMX_OPT="-Dlog4j2.formatMsgNoLookups=true"
SPRING_OPT=""
#jar包路径
FILE_PATH="/home/circles/circles-server/jar/circles-simple.jar"
#nohup java -agentpath:/tmp/cdbg_java_agent.so $JMX_OPT -jar $FILE_PATH $SPRING_OPT > /dev/null 2>&1 &
#nohup java $JMX_OPT -jar $FILE_PATH $SPRING_OPT > /dev/null 2>&1 &
nohup java -jar -Dfile.encoding=UTF-8 $FILE_PATH $SPRING_OPT --project.home=/home/circles/circles-server/jar/ > /dev/null 2>&1 &
3、停止脚本
ps -ef|grep "circles-simple.jar"|grep -v grep |awk '{print $2}'|xargs kill -9
4、开机启动脚本
[Unit]
Description=circles
After=network.target
[Service]
Type=forking
ExecStart=/home/circles/circles-server/sh/run-circles-server.sh
[Install]
WantedBy=multi-user.target