Heim > Java > javaLernprogramm > So starten und stoppen Sie das SpringBoot-JAR-Programm unter Linux

So starten und stoppen Sie das SpringBoot-JAR-Programm unter Linux

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2023-05-14 18:52:14
nach vorne
1556 Leute haben es durchsucht

具体代码如下所示:

#!/bin/bash
cd `dirname $0`
cur_shell_dir=`pwd`
cur_shell_name=`basename ${bash_source}`
#修改这里jar包名即可
jar_name="xxxxxxxxxxxx.jar" 
jar_path=$cur_shell_dir/$jar_name
#java_mem_opts=" -server -xms1024m -xmx1024m -xx:permsize=128m"
java_mem_opts=""
#spring_profiles_activ="-dspring.profiles.active=eureka2"
spring_profiles_activ=""
log_dir=$cur_shell_dir/logs
log_path=$log_dir/${jar_name}.log
echo_help()
{
  echo -e "syntax: sh $cur_shell_name start|stop"
}
if [ -z $1 ];then
  echo_help
  exit 1
fi
if [ ! -d "$log_dir" ];then
  mkdir "$log_dir"
fi
if [ ! -f "$log_path" ];then
  touch "$log_dir"
fi
if [ "$1" == "start" ];then
# check server
  pids=`ps --no-heading -c java -f --width 1000 | grep $jar_name | awk '{print $2}'`
  if [ -n "$pids" ]; then
    echo -e "error: the $jar_name already started and the pid is ${pids}."
    exit 1
  fi
echo "starting the $jar_name..."
 
  # start
  nohup java $java_mem_opts -jar $spring_profiles_activ $jar_path >> $log_path 2>&1 &
 
  count=0
  while [ $count -lt 1 ]; do
    sleep 1
    count=`ps --no-heading -c java -f --width 1000 | grep "$jar_name" | awk '{print $2}' | wc -l`
    if [ $count -gt 0 ]; then
      break
    fi
  done
  pids=`ps --no-heading -c java -f --width 1000 | grep "$jar_name" | awk '{print $2}'`
  echo "${jar_name} started and the pid is ${pids}."
  echo "you can check the log file in ${log_path} for details."
 
elif [ "$1" == "stop" ];then
 
  pids=`ps --no-heading -c java -f --width 1000 | grep $jar_name | awk '{print $2}'`
  if [ -z "$pids" ]; then
    echo "error:the $jar_name does not started!"
    exit 1
  fi
echo -e "stopping the $jar_name..."
 
  for pid in $pids; do
    kill $pid > /dev/null 2>&1
  done
 
  count=0
  while [ $count -lt 1 ]; do
    sleep 1
    count=1
    for pid in $pids ; do
      pid_exist=`ps --no-heading -p $pid`
      if [ -n "$pid_exist" ]; then
        count=0
        break
      fi
    done
  done
 
  echo -e "${jar_name} stopped and the pid is ${pids}."
else
  echo_help
  exit 1
fi
Nach dem Login kopieren

以上代码只需修改jar包名即可使用

启动jar包:

 ./xxxx.sh start

停止 jar包

./xxxx.sh stop

Das obige ist der detaillierte Inhalt vonSo starten und stoppen Sie das SpringBoot-JAR-Programm unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage