1.启动jar的shell
# [] 中为可选
# > 覆盖日志, >> 追加日志 : 将日志写进 logs/.log 文件
# & 后台运行
cmd=`java路径 [jvm配置] -jar jar名字 [yml配置] > logs/.log &`
# 执行
${cmd}
echo "启动完成"
2.关闭jar的方式(为让程序正常关闭,不使用kill方式,使用请求接口,在内部关闭的方式)
shell:
port=${1}
if [ ! -n "$port" ]; then
echo "请输入项目端口号!"
else
echo "停止端口[${port}]的springboot程序..."
cmd=`curl -i -X POST http://127.0.0.1:${port}/shutdown`
ret=${cmd}
echo "$ret"
fi
java:
@RestController
public class ShutdownController {
@RequestMapping("/shutdown")
public String shutdown(HttpServletRequest request) {
// IpUtil ip工具类 判断是不是本地请求
String ip = IpUtil.getIpAddr(request);
if (ip.indexOf("127.0.0.1") != -1) {
System.exit(0);
}
return "success";
}
}
使用: ./shell文件 端口号