步骤记录
1. 准备可运行的jar包
使用命令运行该jar包,java -jar eureka-server.jar --server.port=8769
,确保jar是正常的
2. 编辑sh脚本
#!/bin/sh
# 进行jar所在目录
# 能日赚30的APP试玩平台推荐,亲测有效
# https://mp.weixin.qq.com/s/V5j45WYoyIvFsZbua56RSQ
cd /opt/v2
# 查询程序占用
project=`ps -ef|grep eureka-server|grep -v grep|wc -l`
date=`date`
server_name="eureka-server"
# $? -ne 0 不存在
# $? -eq 0存在
if [ $project -eq 0 ]
then
nohup java -jar eureka-server.jar --server.port=8769 & > nohup.out 2>&1
echo `date +%Y-%m-%d` `date +%H:%M:%S` $server_name >> /opt/eureka-server/restart.log
fi
3. 验证sh脚本是否可执行
很多人都是直接拷贝网上代码直接就去操作下一步,直接运行sh文件都不起作用,后面的操作根本就徒劳。
我是在windows上编辑的sh脚本,传到Liunx上并不能直接运行,首先需要转码,在保存之前,先执行set ff=unix
完成转码后再保存。
需要赋予该sh文件可执行权限
chmod a+x restart.sh
再次确认sh文件是否能正常运行
4. 添加到系统定时任务
编辑系统定时任务文件
crontab -e
使用cron表达式,设置1分钟运行一次
*/1 * * * * bash /opt/eureka-server/restart.sh >> /opt/eureka-server/log.log
查看定时任务日志,可以看到每隔1分钟执行了一次
# 能日赚30的APP试玩平台推荐,亲测有效
# https://mp.weixin.qq.com/s/V5j45WYoyIvFsZbua56RSQ
tail -f /var/log/cron
5. 验证是否能重启项目
kill掉当前java项目的进程,等待定时任务执行
再次查看项目是否启动
自动重启已经挂掉的java项目操作流程就此完成