一、Linux系统
方式一:不用指定jar包所在绝对路径
创建文件夹,需和jar包放到同一个文件夹下面:bootstrap.sh
#!/bin/bash
######### PARAM ######################################
JAVA_OPT=-Xmx1024m
JARFILE=`ls -1r *.jar 2>/dev/null | head -n 1`
PID_FILE=pid.file
RUNNING=N
PWD=`pwd`
######### DO NOT MODIFY ########
if [ -f $PID_FILE ]; then
PID=`cat $PID_FILE`
if [ ! -z "$PID" ] && kill -0 $PID 2>/dev/null; then
RUNNING=Y
fi
fi
start()
{
if [ $RUNNING == "Y" ]; then
echo "Application already started"
else
if [ -z "$JARFILE" ]
then
echo "ERROR: jar file not found"
else
nohup java $JAVA_OPT -Djava.security.egd=file:/dev/./urandom -jar $PWD/$JARFILE > nohup.out 2>&1 &
echo $! > $PID_FILE
echo "Application $JARFILE starting..."
tail -f nohup.out
fi
fi
}
stop()
{
if [ $RUNNING == "Y" ]; then
kill -9 $PID
rm -f $PID_FILE
echo "Application stopped"
else
echo "Application not running"
fi
}
restart()
{
stop
start
}
case "$1" in
'start')
start
;;
'stop')
stop
;;
'restart')
restart
;;
*)
echo "Usage: $0 { start | stop | restart }"
exit 1
;;
esac
exit 0
启动、停止命令
首先需要进入脚本所在文件夹。
1) 启动:./bootstrap.sh start
2) 停止:./bootstrap.sh stop
2) 重启:./bootstrap.sh restart
方式二:需要指定jar包所在绝对路径
创建文件夹,需和jar包放到同一个文件夹下面:start.sh
启动脚本如下,使用命令启动:sh start.sh
#!/bin/sh
#启动命令
#其中/usr/hntt/server/base-server.jar为jar包所在绝对路径
#--spring.profiles.active=prod 指定启动的配置文件
#/usr/hntt/server/base-server.log 指定日志文件
nohup java -server -jar /usr/hntt/server/base-server.jar --spring.profiles.active=prod > /usr/hntt/server/base-server.log &
#将pid写进文件
#/usr/hntt/server/base-server.pid 指定进程ID文件
echo $! > /usr/hntt/server/base-server.pid
创建文件夹:stop.sh
停止命令如下,使用命令停止:sh stop.sh
#!/bin/sh
#获取之前写进文件的pid号
PID=$(cat /usr/hntt/server/base-server.pid)
#杀死pid号
kill -9 $PID
二、Windows系统
第一步:创建bat文件:jar启动脚本.bat。(需和jar包放到同一个目录下)
第二步:命令脚本
#启动后黑窗口显示的标题名称
title 转发公安数据
#使用utf-8编码。window默认编码为gbk,否则启动后黑窗口显示中文乱码
chcp 65001
#jar包名称
java -jar test-0.0.1-SNAPSHOT.jar
双击bat文件即启动,关闭启动后的黑窗口即停止。