Centos java 启动脚本

1、将公共参数配置在当前用户的环境变量,集中管理,方便修改

  • 在当前系统用户下配置通用环境变量,编辑 vim ~/.bash_profile
vim ~/.bash_profile
#java
export JAVA_HOME=/opt/jdk1.8.0_60
export JAVA_BIN=${JAVA_HOME}/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN CLASSPATH
export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S  "

#nacos
export NACOS_URL=NACOS 连接地址
export NACOS_PORT=8848
export NACOS_ADDR=$NACOS_URL:$NACOS_PORT
export NACOS_CONFIG_NAMESPACE=online

配置好环境变量,重新连接即可生效

  • 编写重新启动脚本restart.sh
#!/bin/sh
# param
PROJECT_PATH=$(cd `dirname $0`; pwd)
PROJECT_ALL_LOG_NAME=logs/catalina.log
PROJECT_NAME=$1
# echo
echo '[echo]' 'sh restart.sh'
echo '[echo]' 'Dspring.cloud.nacos.config.server-addr='$NACOS_ADDR
echo '[echo]' 'Dspring.cloud.nacos.config.namespace='$NACOS_CONFIG_NAMESPACE
echo '[echo]' 'JAVA_HOME='$JAVA_HOME
echo '[echo]' 'logs out='$PROJECT_PATH/$PROJECT_ALL_LOG_NAME
#
if [ -z "$PROJECT_NAME" ];then
  PROJECT_NAME=$(find . -name '*.jar'|head -1)
  if [[ $PROJECT_NAME =~ "/" ]];then
    PROJECT_NAME=${PROJECT_NAME##*/}
  fi
fi

if [ ! -f "$PROJECT_NAME" ];then
  echo "not find jar ->  ${PROJECT_NAME}"
  exit 0
fi
echo '[echo]' 'path' $PROJECT_PATH'/'$PROJECT_NAME

# stop process
tpid=`ps -ef|grep $PROJECT_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo '[echo]' 'Stop Process...'
    # 是先关闭和其有关的程序,再将其关闭
    kill -15 $tpid
fi
sleep 5

tpid=`ps -ef|grep $PROJECT_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo '[echo]' 'Kill Process!' $tpid
    kill -9 $tpid
else
    echo '[echo]' 'Stop Success!'
fi

# start process
tpid=`ps -ef|grep $PROJECT_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo '[echo]' 'App is already running.'
else
    echo '[echo]' 'Please wait a moment. Its starting... '
#    echo '[echo]' 'jar' $PROJECT_PATH'/'$PROJECT_NAME  
    nohup $JAVA_HOME/bin/java\
         -Xms128m -Xmx256m\
         -Dnacos.use.endpoint.parsing.rule=false\
         -Dnacos.use.cloud.namespace.parsing=false\
         -Dspring.cloud.nacos.config.server-addr=$NACOS_ADDR\
         -Dspring.cloud.nacos.config.namespace=$NACOS_CONFIG_NAMESPACE\
         -jar $PROJECT_PATH/$PROJECT_NAME > $PROJECT_PATH/$PROJECT_ALL_LOG_NAME 2>&1 &
    sleep 10
    echo '[echo]' 'Start Success!'
#    tail -f $PROJECT_PATH$PROJECT_ALL_LOG_NAME
fi

  • 添加执行权限
chmod +x *.sh
  • 将脚本与需要启动的jar放在同一目录下,并创建logs目录
  • 启动
./restart.sh 

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值