java 项目线上拉代码,打包

pos-admin.sh

#!/bin/sh
echo =================================
echo  自动化部署脚本启动
echo =================================

echo 停止原来运行中的工程
APP_NAME=pos-admin.jar
### APP_NAME = test.jar
###  这个地方的名称 就是pom 文件中的 artifactId , 但最好是写全一点  比如打包了之后的 包名称是 test.jar
### 那么这里的 APP_NAME 就写成  test.jar  ,  因为后面  tpid 的变量同 会匹配这个 app_name 的, 如果匹配的结果很多,   tpid 的值会是多个, kill不掉, 脚本执行达不到效果

### 这里使用 kill -15  是一种柔和的关闭进程的一种方式
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo 'Stop Process...'
    kill -15 $tpid
fi
### 这里是等待两秒之后, 如果还找到了进程的id ,那就进行强制关闭
sleep 2
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo 'Kill Process!'
    kill -9 $tpid
else
    echo 'Stop Success!'
fi

echo 准备从Git仓库拉取最新代码
cd /project/pos/git/tiger

echo 开始从Git仓库拉取最新代码
git pull
echo 代码拉取完成

echo 开始打包
# output=`mvn clean package -pl io.renren:pos-admin -am -amd -Dmaven.test.skip=true`
mvn clean package -pl io.renren:pos-admin -am -amd -Dmaven.test.skip=true

cd renren-admin/target

echo 启动项目
nohup java -jar pos-admin.jar &> /project/pos/pos-admin.log &
echo Java项目启动完成

# vue打包更新
echo 处理VUE
cd /project/pos/git/tiger/renren-ui
# output=`npm run build:prod`
# npm run build:prod
rm -rf dist
cp -rf dist_prod dist
echo VUE打包成功

# 转移pos
echo 转移POS安装包
cp -R ../pos-update ./dist/
echo 转移成功
posted @ 2024-03-30 22:09  盘思动  阅读(4)  评论(0编辑  收藏  举报