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 相关文章推荐
Spring Boot 实现敏感词及特殊字符过滤处理
Jun 29 Java/Android
小程序与后端Java接口交互实现HelloWorld入门
Jul 09 Java/Android
idea以任意顺序debug多线程程序的具体用法
Aug 30 Java/Android
Java GUI编程菜单组件实例详解
Apr 07 Java/Android
Java详细解析==和equals的区别
Apr 07 Java/Android
零基础学java之带参数以及返回值的方法
Apr 10 Java/Android
零基础学java之循环语句的使用
Apr 10 Java/Android
Java死锁的排查
May 11 Java/Android
Java中生成微信小程序太阳码的实现方案
Jun 01 Java/Android
阿里面试Nacos配置中心交互模型是push还是pull原理解析
Jul 23 Java/Android
IDEA中sout快捷键无效问题的解决方法
Jul 23 Java/Android
Spring boot admin 服务监控利器详解
Aug 05 Java/Android
详解Java分布式事务的 6 种解决方案
Jun 26 #Java/Android
自从在 IDEA 中用了热部署神器 JRebel 之后,开发效率提升了 10(真棒)
图解排序算法之希尔排序Java实现
Netty结合Protobuf进行编解码的方法
Java常用工具类汇总 附示例代码
Java多条件判断场景中规则执行器的设计
Java基于字符界面的简易收银台
You might like
程序员编程十条戒律
2009/07/09 PHP
PHP实现设计模式中的抽象工厂模式详解
2014/10/11 PHP
Yii中CGridView关联表搜索排序方法实例详解
2014/12/03 PHP
php实现的简易扫雷游戏实例
2015/07/09 PHP
WordPress中使主题支持小工具以及添加插件启用函数
2015/12/22 PHP
Yii2.0 Basic代码中路由链接被转义的处理方法
2016/09/21 PHP
php 变量引用与变量销毁机制详细介绍
2016/12/05 PHP
使用composer命令加载vendor中的第三方类库 的方法
2019/07/09 PHP
JavaScript中令你抓狂的魔术变量
2006/11/30 Javascript
js监听表单value的修改同步问题,跨浏览器支持
2009/12/31 Javascript
Extjs优化(二)Form表单提交通用实现
2013/04/15 Javascript
JavaScript获取客户端计算机硬件及系统等信息的方法
2014/01/02 Javascript
jquery图片滚动放大代码分享(1)
2015/08/25 Javascript
JavaScript实现向右伸出的多级网页菜单效果
2015/08/25 Javascript
js父页面中使用子页面的方法
2016/01/09 Javascript
浅析Bootstrap组件之面板组件
2016/05/04 Javascript
如何解决vue2.0下IE浏览器白屏问题
2018/09/13 Javascript
js实现京东秒杀倒计时功能
2019/01/21 Javascript
Jquery cookie插件实现原理代码解析
2020/08/04 jQuery
vue+elementUI中表格高亮或字体颜色改变操作
2020/11/02 Javascript
[50:28]LGD女子学院第三期 DOTA2复仇之魂教学
2013/12/24 DOTA
[23:18]Spirit vs Liquid Supermajor小组赛A组 BO3 第二场 6.2
2018/06/03 DOTA
[01:10:30]DOTA2-DPC中国联赛正赛 Dragon vs Dynasty BO3 第一场 3月4日
2021/03/11 DOTA
python登录pop3邮件服务器接收邮件的方法
2015/04/30 Python
Python实现简单截取中文字符串的方法
2015/06/15 Python
Python编程之黑板上排列组合,你舍得解开吗
2017/10/30 Python
Python实战小程序利用matplotlib模块画图代码分享
2017/12/09 Python
selenium+python自动化测试之环境搭建
2019/01/23 Python
python 实现的车牌识别项目
2021/01/25 Python
aec加密 php_php aes加密解密类(兼容php5、php7)
2021/03/14 PHP
全球最大的房车租赁市场:Outdoorsy
2018/09/19 全球购物
销售高级职员求职信
2013/10/29 职场文书
家长通知书家长评语
2014/04/17 职场文书
公司授权委托书范文
2014/08/02 职场文书
长城导游词300字
2015/01/30 职场文书
诗词赏析-(浣溪沙)
2019/08/13 职场文书