#!/bin/bash #jenkin编译时调用的shell,仅使用在测试服务器上 #export BUILD_ID=dontKillMe这一句很重要,这样指定了,项目启动之后才不会被Jenkins杀掉。 source /etc/profile #用于保存启动服务的PID pid_path={pid路径} #如果PID目录不存在,则创建 if [ ! -d "{pid_path} fi
#如果没传参数,就结束启动脚本 if [ -z "2" ]; then exit fi
p_path="2.jar" echo "parent_path: jar_name"
app_name="{jar_name%-*.*.jar}" echo "app_name: app_name"
#修改工作目录 cd 2 #获取运行编译好的进程ID,便于我们在重新部署项目的时候先杀掉以前的进程 if [ -f "{app_name}.pid" ]; then pid={pid_path}/{app_name}.pid) #杀掉以前可能启动的项目进程 kill -9 {pid} fi
#启动jar,后台启动
#BUILD_ID=dontKillMe
BUILD_ID=dontKillMe nohup java -Xmx256m -Xms256m -Xmn200m -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8080 -jar 包名称.jar --server.port=8182 >> ${jar_name%-*.*.jar}.out 2>&1 &
#将进程ID存入到app_name.pid文件中 (pid统一路径)
echo $! > ${pid_path}/${app_name}.pid
echo "pid: $(cat ${pid_path}/${app_name}.pid)"
例子截图
创作不易,麻烦帅哥美女们给点赞,收藏一下!谢谢!