zoukankan      html  css  js  c++  java
  • 通用jar包部署脚本

      在《Linux下部署Spring Boot 项目 jar包》中,小编介绍了一步一步发布jar包的方法,这里提供一个通用Shell脚本,傻瓜式发布Spring Boot项目。

      通过WinSCP把

    通用启动脚本

      将通用Shell脚本命名为start.sh,并把脚本上传至jar所在目录, 脚本内容如下:

    #######################
    #脚本使用方法:
    #把本脚本和jar包放在同一目录下,保证当前目录有且仅有一个jar包即可。无需修改任何东西。
    #######################
    
    CurrentPath=`pwd`
    CurrentDirName=`basename $(pwd)`
    if ls *.jar &> /dev/null ;then
            if [ `ls *.jar | wc -l` -eq 1 ];then
                    APP_NAME=`find $CurrentPath -maxdepth 1 -name "*.jar"`
            else
                    echo -e "33[31m------   Error! Too Much JAR Packages In This Directory !33[0"
                    exit 2
            fi
    else
            echo -e "33[31m------   Error! No JAR Package In Current File !33[0"
            exit 1
    fi
    
     is_exist() {
       pid=`ps aux | grep $APP_NAME | grep -v grep | grep "jar$"| awk '{print $2}'`
       if [ -z "$pid" ];then
         return 1
        else
          return 0
        fi
    }
    start () {
        is_exist
        if [ $? -eq 0 ];then
            echo "${APP_NAME} is already running. pid=${pid} ."
        else
            nohup java -jar $APP_NAME &> nohup.$CurrentDirName &
        fi
    }
    stop () {
        is_exist
        if [ $? -eq 0 ];then
            kill  $pid
        else
            echo "${APP_NAME} is not running"
        fi
    }
    status () {
        is_exist
        if [ $? -eq 0 ];then
            echo "${APP_NAME} is running. Pid is ${pid}"
        else
            echo "${APP_NAME} is not running"
        fi
    }
    case $1 in
        start)
            start;;
        stop)
            stop;;
    
        restart)
            stop
            start;;
        status)
            status;;
        *)
            echo "Usage: $0 {start|stop|status|restart} "
    esac
    

    执行通用shell脚本

      在脚本所在目录,执行如下Linux命令即可启动项目:

    sh start.sh start

      关于本文内容,大家有什么看法?欢迎留言讨论,也希望大家多多点赞关注。楼兰胡杨祝各位生活愉快!工作顺利!


      读后有收获,小礼物走一走,请作者喝咖啡。

    赞赏支持

  • 相关阅读:
    【LeetCode-树】二叉搜索树中第K小的元素
    【机器学习-评估方法】模型评估方法
    【LeetCode-树】二叉搜索树的最小绝对差
    【LeetCode-树】检查平衡性
    【LeetCode-树】验证二叉搜索树
    【LeetCode-回溯/动态规划】不同路径
    Vue——风格指南
    潜在危险
    渲染HTML的方式
    Vue——状态管理
  • 原文地址:https://www.cnblogs.com/east7/p/15191373.html
Copyright © 2011-2022 走看看