在Linux服务器上运行jar包,服务器上输入 java -jar app_name.jar,如果想让程序一直在服务器上运行,则需要用nohup命令。命令如下:
nohup java -jar app_name.jar &
将程序输出的日志放在指定的文件中,使用“>>”来指向文件(覆盖日志用“>”),命令如下:
nohup java -jar app_name.jar >> /home/app_name/logs/app_name.log 2>&1 &
上面app_name.log文件存储了程序的输出信息,当程序运行了较长时间,日志文件会变得越来越大,所以我们需要按天来存储日志,每天生成一个日志文件;命令如下:
nohup java -jar app_name.jar >> /home/app_name/logs/app_name-$(date +%Y-%m-%d).log 2>&1 &
2 >&1
2为标准输入
1为标准输出
具体参考:https://blog.csdn.net/zhaominpro/article/details/82630528
脚本化:使用脚本替代每次手动启停程序
1、创建两个sh文件(Windows为.bat)
start.sh
#! /bin/bash
nohup java -jar app_name.jar >> /home/app_name/logs/app_name-$(date +%Y-%m-%d).log 2>&1 &
#将jar包启动程序的pid写入文件中,停止时可直接kill pid
echo $! > /home/app_name/pid.txt
stop.sh
#! /bin/bash
PID=$(cat /home/app_name/pid.txt)
kill -9 $PID
启动项目:sh start.sh
停止项目:sh stop.sh
参考引用:
https://www.cnblogs.com/lovetl/p/12780553.html
https://blog.csdn.net/qq_32921327/article/details/106240336