jar包运行
windows和linux 一样样的java -jar
终端不关闭时运行
java -jar xxx.jar:当前ssh窗口被锁定,不可进行其它操作,ctrl + c或直接关闭窗口停止程序;
java -jar xxxxx.jar &: 当前ssh窗口不被锁定,可进行其它操作,当窗口关闭时,程序退出;
nohup java -jar xxx.jar &:后台挂起程序,当账户退出或终端关闭时程序停止,日志文件存储在当前目录的nohup.out文件中;
终端关闭 后台运行
nohup java -jar xxxxxx.jar > log.txt &:指定输出日志到log.txt文件,后台挂起程序,当账户退出或终端关闭时,程序仍然运行;
nohup 表示生成日志文件nohup.out,& 表示后台新启一个线程执行该命令。
查看运行中的jar包
以下几种命令均可
ps -ef | grep java 查看当前运行的java进程
ps -ef | grep xxx.jar 查看当前运行的jar进程
ps -ef 查看所有 进程 可以看到哪一列是PID 和PPID
jar的终止
kill -9 jar包pid
jar启停脚本
# start.sh
nohup java -jar 包名.jar >log.txt &
echo $! > /var/run/包名.pid
# 将jar包启动对应的pid写入文件中,为停止时提供pid
# shutdown.sh
PID=$(cat /var/run/包名.pid)
kill -9 $PID
给脚本添加可执行权限
sudo chmod +x ./test.sh
文章介绍了如何在Linux环境下使用java-jar命令运行jar包,包括在终端不关闭时运行、后台挂起程序以及指定日志输出。使用nohup可以使程序在终端关闭后继续运行。同时,文章还讲述了如何查看正在运行的jar进程以及通过pid终止jar进程。最后,提供了start.sh和shutdown.sh脚本示例,用于jar包的启动和停止,并说明了如何为脚本添加可执行权限。
734

被折叠的 条评论
为什么被折叠?



