Spring Boot 启动、停止、重启、状态脚本


Posted in Java/Android onJune 26, 2021

此脚本用来管理 SpringBoot 项目的进程状态。

有提示功能。

把脚本丢到项目文件夹, 添加执行权限即可。

如果 jenkins 使用这个脚本, 需要在 java -jar 命令前添加 BUILD_ID=dontKillMe , 不然 jenkins 会杀掉进程。

参考:

https://stackoverflow.com/questions/39169457/how-to-tell-jenkins-not-to-kill-processes-after-successful-execution-of-job-in-m

脚本维护在 github, 有需求的话可以关注

https://github.com/junbaor/shell_script/blob/master/spring-boot.sh

Spring Boot 启动、停止、重启、状态脚本

spring-boot.sh

#!/bin/bash

SpringBoot=$2

if [ "$1" = "" ];
then
    echo -e "\033[0;31m 未输入操作名 \033[0m  \033[0;34m {start|stop|restart|status} \033[0m"
    exit 1
fi

if [ "$SpringBoot" = "" ];
then
    echo -e "\033[0;31m 未输入应用名 \033[0m"
    exit 1
fi

function start()
{
    count=`ps -ef |grep java|grep $SpringBoot|grep -v grep|wc -l`
    if [ $count != 0 ];then
        echo "$SpringBoot is running..."
    else
        echo "Start $SpringBoot success..."
        nohup java -jar $SpringBoot > /dev/null 2>&1 &
    fi
}

function stop()
{
    echo "Stop $SpringBoot"
    boot_id=`ps -ef |grep java|grep $SpringBoot|grep -v grep|awk '{print $2}'`
    count=`ps -ef |grep java|grep $SpringBoot|grep -v grep|wc -l`

    if [ $count != 0 ];then
        kill $boot_id
        count=`ps -ef |grep java|grep $SpringBoot|grep -v grep|wc -l`

        boot_id=`ps -ef |grep java|grep $SpringBoot|grep -v grep|awk '{print $2}'`
        kill -9 $boot_id
    fi
}

function restart()
{
    stop
    sleep 2
    start
}

function status()
{
    count=`ps -ef |grep java|grep $SpringBoot|grep -v grep|wc -l`
    if [ $count != 0 ];then
        echo "$SpringBoot is running..."
    else
        echo "$SpringBoot is not running..."
    fi
}

case $1 in
    start)
    start;;
    stop)
    stop;;
    restart)
    restart;;
    status)
    status;;
    *)

    echo -e "\033[0;31m Usage: \033[0m  \033[0;34m sh  $0  {start|stop|restart|status}  {SpringBootJarName} \033[0m
\033[0;31m Example: \033[0m
      \033[0;33m sh  $0  start esmart-test.jar \033[0m"
esac

Spring Boot 示例教程和源码已上传:

https://github.com/javastacks/spring-boot-best-practice

以上就是Spring Boot 启动、停止、重启、状态脚本的详细内容,更多关于Spring Boot 启动脚本的资料请关注三水点靠木其它相关文章!

Java/Android 相关文章推荐
分析并发编程之LongAdder原理
Jun 29 Java/Android
解决MultipartFile.transferTo(dest) 报FileNotFoundExcep的问题
Jul 01 Java/Android
Java基础-封装和继承
Jul 02 Java/Android
java设计模式--三种工厂模式详解
Jul 21 Java/Android
SpringRetry重试框架的具体使用
Jul 25 Java/Android
mybatis中注解与xml配置的对应关系和对比分析
Aug 04 Java/Android
Java中CyclicBarrier和CountDownLatch的用法与区别
Aug 23 Java/Android
Android自定义ScrollView实现阻尼回弹
Apr 01 Java/Android
Java工作中实用的代码优化技巧分享
Apr 21 Java/Android
Java实现简单小画板
Jun 10 Java/Android
SpringBoot使用ip2region获取地理位置信息的方法
Jun 21 Java/Android
详解Java分布式事务的 6 种解决方案
Jun 26 #Java/Android
自从在 IDEA 中用了热部署神器 JRebel 之后,开发效率提升了 10(真棒)
图解排序算法之希尔排序Java实现
Netty结合Protobuf进行编解码的方法
Java常用工具类汇总 附示例代码
Java多条件判断场景中规则执行器的设计
Java基于字符界面的简易收银台
You might like
php和js交互一例-PHP教程,PHP应用
2007/01/03 PHP
PHP正则验证Email的方法
2015/06/15 PHP
PHP中使用curl入门教程
2015/07/02 PHP
Laravel 在views中加载公共页面的实现代码
2019/10/22 PHP
PhpSpreadsheet设置单元格常用操作汇总
2020/11/13 PHP
JQuery扩展插件Validate—6 radio、checkbox、select的验证
2011/09/05 Javascript
基于jQuery的input输入框下拉提示层(自动邮箱后缀名)
2012/06/14 Javascript
JavaScript 用Node.js写Shell脚本[译]
2012/09/20 Javascript
js获取视频时长代码
2014/04/10 Javascript
搭建pomelo 开发环境
2014/06/24 Javascript
自定义jQuery插件方式实现强制对象重绘的方法
2015/03/23 Javascript
在Javascript中处理字符串之big()方法的使用
2015/06/08 Javascript
bootstrap flask登录页面编写实例
2016/11/01 Javascript
常用原生js自定义函数总结
2016/11/20 Javascript
JS 在数组指定位置插入/删除数据的方法
2017/01/12 Javascript
node.js 发布订阅模式的实例
2017/09/10 Javascript
微信小程序url与token设置详解
2017/09/26 Javascript
vue2里面ref的具体使用方法
2017/10/27 Javascript
jQuery+CSS实现的table表格行列转置功能示例
2018/01/08 jQuery
vuejs简单验证码功能完整示例
2019/01/08 Javascript
关于在LayUI中使用AJAX提交巨坑记录
2019/10/25 Javascript
使用 UniApp 实现小程序的微信登录功能
2020/06/09 Javascript
nestjs中异常过滤器Exceptionfilter的具体使用
2021/02/07 Javascript
如何通过安装HomeBrew来安装Python3
2020/12/23 Python
python中pivot()函数基础知识点
2021/01/03 Python
纯css3实现思维导图样式示例
2018/11/01 HTML / CSS
HelloFresh奥地利:立即订购烹饪盒
2019/02/22 全球购物
英语专业毕业生自荐信范文
2013/12/31 职场文书
我的画教学反思
2014/04/28 职场文书
品牌推广活动策划方案
2014/08/19 职场文书
党员教师群众路线个人整改措施
2014/10/28 职场文书
2014-2015学年工作总结
2014/11/27 职场文书
小班上学期幼儿评语
2014/12/30 职场文书
《所见》教学反思
2016/02/23 职场文书
JavaScript展开运算符和剩余运算符的区别详解
2022/02/18 Javascript
SONY600GR,国产收音机厂商永远的痛
2022/04/05 无线电