项目打包
把Spring Boot项目执行下面命令打包为jar包。
mvn clean package
为了演示方便,这里准备了一个Mybatisplus的小项目,进行演示。
将打包完成的jar包:mybatisplus-0.0.1-SNAPSHOT.jar
上传至服务器。
这里我把它放在了服务器的/home/mybatisplus
目录下面。
编写Shell脚本
在该目录下,创建文件springboot.sh
,并使用vi
编辑器写入如下脚本内容:
#!/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 test.jar \033[0m"
esac
对springboot.sh
文件赋予可执行权限:
chmod u+x springboot.sh
演示
在该目录下面输入./springboot.sh
执行脚本。
启动项目
./springboot.sh start mybatisplus-0.0.1-SNAPSHOT.jar
在浏览器地址栏中输入:http://服务器ip:8081/mybatisplus/api/userInfo
进行测试。
查看状态
./springboot.sh status mybatisplus-0.0.1-SNAPSHOT.jar
重新启动
./springboot.sh restart mybatisplus-0.0.1-SNAPSHOT.jar
停止
./springboot.sh stop mybatisplus-0.0.1-SNAPSHOT.jar
<hr style=" border:solid; width:100px; height:1px;" color=#000000 size=1">
本篇文章到这里就基本结束了,如果这篇文章对你有帮助,希望大家能留下你的点赞、 关注、 分享、 留言~