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

 更新时间:2021年06月26日 09:39:32   作者:Java技术栈  
今天给大家分享Spring Boot 项目脚本(启动、停止、重启、状态),通过示例代码给大家介绍的非常详细,需要的朋友参考下吧

此脚本用来管理 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.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 启动脚本的资料请关注脚本之家其它相关文章!

相关文章

  • Mybatis-plus使用selectList查询数据为null的问题及解决办法

    Mybatis-plus使用selectList查询数据为null的问题及解决办法

    这篇文章主要介绍了Mybatis-plus使用selectList查询数据为null的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Java数据类型转换详解

    Java数据类型转换详解

    这篇文章主要讲解Java中基本数据类型、字符串与其它数据类型以及常见的日期类型的转换,希望能给大家做一个参考。
    2016-06-06
  • SpringBoot项目开发中常用的依赖

    SpringBoot项目开发中常用的依赖

    这篇文章主要介绍了SpringBoot项目开发中常用的依赖详解,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • SpringAOP核心对象的创建图解

    SpringAOP核心对象的创建图解

    这篇文章主要介绍了SpringAOP核心对象的创建详解,通过使用AOP,我们可以将横切关注点(如日志记录、性能监控、事务管理等)从业务逻辑中分离出来,使得代码更加模块化、可维护性更高,需要的朋友可以参考下
    2023-10-10
  • Java ServletContext对象原理及功能解析

    Java ServletContext对象原理及功能解析

    这篇文章主要介绍了Java ServletContext对象原理及功能解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • RocketMQ消息丢失的场景以及解决方案

    RocketMQ消息丢失的场景以及解决方案

    Apache RocketMQ是企业级的消息中间件,以其高性能和高可靠性而广泛应用,但是,消息丢失的问题在实践中仍然存在,本文将探讨此问题并提供解决方案,需要的朋友可以参考下
    2023-11-11
  • Mybatis-Plus-AutoGenerator 最详细使用方法

    Mybatis-Plus-AutoGenerator 最详细使用方法

    这篇文章主要介绍了Mybatis-Plus-AutoGenerator 最详细使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • Java  mysql数据库并进行内容查询实例代码

    Java mysql数据库并进行内容查询实例代码

    这篇文章主要介绍了Java mysql数据库并进行内容查询实例代码的相关资料,需要的朋友可以参考下
    2016-11-11
  • JDK与JRE的下载和安装以及配置JDK环境变量图文教程

    JDK与JRE的下载和安装以及配置JDK环境变量图文教程

    JRE也就是(Java RuntimeEnvironment)Java运行环境,是运行JAVA程序所必须的环境的集合,包含各种类库,下面这篇文章主要给大家介绍了关于JDK与JRE的下载和安装以及配置JDK环境变量的相关资料,需要的朋友可以参考下
    2023-12-12
  • 自定义log4j2中的Appender来获取日志内容的示例代码

    自定义log4j2中的Appender来获取日志内容的示例代码

    在 Log4j2 中,Appender 是负责将日志事件输出到目标地点的组件,本文讲述的是通过 log4j 中自定义的 Appender 来获取需要打印的日志信息,文中有详细的代码示例供大家参考,需要的朋友可以参考下
    2024-02-02

最新评论