概述
1. 前提
- 安装
Java
环境 - 安装配置
Maven3
环境 - 安装
Git
环境 Linux
系统,我当前使用的脚本环境是CentOS8
2. 说明
- 第一部分是首先杀死该
Java
服务对应的端口,也就是jar
文件运行的端口 - 第二部分就是更新本地的文件,从
Git
上面拉取 - 第三部分就是调用
Maven
编译构建jar
文件 - 第四部分就是将文件拷贝到实际的运行目录中,然后后台运行
3. 脚本文件
#! /bin/bash
##总说明
##编译该项目并发布到指定目录下
##运行改脚本请使用 sh -x build_prod.sh 或者 ./build_prod.sh
##如果出现权限不够 请使用 chmod +x build_prod.sh
#杀死8888对应的端口进程
d=`date "+%Y-%m-%d %H:%M:%S"`
st=`date -d "${d}" +%s`
echo "--------------------当前日期:${d}--------------------"
echo "--------------------拉取项目--------------------"
cd /first/application/projects/collapse-service
git pull origin master
echo "--------------------拉取项目完成...--------------------"
port=82
echo "--------------------端口:${port}--------------------"
java_ps_id=$(netstat -nlp | grep :${port} | awk '{print $7}' | awk -F"/" '{ print $1 }')
echo "--------------------Java进程id:${java_ps_id}--------------------"
if((java_ps_id>0)); then
echo "-------------------->>杀死java进程:${java_ps_id}"
kill -9 ${java_ps_id}
fi
jar_name="start-1.0-SNAPSHOT.jar"
echo "--------------------jar名称:${jar_name}"
jar_target="/first/application/projects/collapse-service/core-start/target/"
echo "--------------------jar目录:${jar_target}"
jar_product="/first/application/server/collapse-service"
echo "--------------------生产目录:${jar_product}"
mvn_exec="/first/application/projects/collapse-service/core-parent/"
echo "--------------------mvn执行路径:${mvn_exec}"
echo "--------------------开始构建项目--------------------"
cd ${mvn_exec}
mvn clean package
echo "--------------------完成构建项目--------------------"
#清空发布目录的文件
echo "--------------------开始清除发布目录文件--------------------"
cd ${jar_product}
for file in ${jar_product}/*; do
fileName=${file##*/}
if [[ ${fileName} == *log* ]]; then
echo "-------------------->跳过:${jar_product}${fileName}"
else
echo "-------------------->删除:${jar_product}${fileName}"
rm -rf "${jar_product}${fileName}"
fi
done
echo "--------------------清除发布目录文件完成--------------------"
echo "--------------------复制文件--------------------"
#复制编译好的文件到发布目录
cp -rf "${jar_target}${jar_name}" ${jar_product}
d=`date "+%Y-%m-%d %H:%M:%S"`
##计算耗时
ed=`date -d "${d}" +%s`
tt=$[ed-st]
fen=0
second=${tt}
if((tt>60));then
fen=$[tt/60]
second=$((tt%60))
fi
echo "--------------------启动java程序--------------------"
cd ${jar_product}
nohup java -jar ${jar_name} > log.file 2>&1 &
echo "--------------------完成:${d}--------------------"
echo "--------------------耗时:${fen}分${second}秒--------------------"
最后
以上就是天真铃铛为你收集整理的maven/spring boot项目自动部署脚本的全部内容,希望文章能够帮你解决maven/spring boot项目自动部署脚本所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复