Linux中 java -jar 命令后台运行(nohup、&)

文章介绍了如何在不常用Tomcat且偏好jar包运行的情况下,利用nohup命令在服务器后台启动和管理jar应用。通过安装nohup,使用特定命令启动和指定端口号,以及编写sh脚本来自动化启动和停止多个jar服务,解决了窗口关闭导致应用停止的问题。此外,还提供了查询和杀死jar进程的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于公司及自己不经常使用Tomcat这个软件,tomcat打包的时候必须是war包,个人习惯使用jar包运行,但是在服务器上启动jar包关闭窗口就停止运行,使用nohup启动jar包可以解决这个问题

1. 安装nohup
yum install coreutils
1
2. 启动jar包
nohup java -jar test_1.0.1.jar //启动jar包
# nohup java -jar test_1.0.1.jar server.port=8186 //指定端口号
1
2
启动后会生成一个nohup.out日志文件

3. 停止nohup java 进程
1 查询jar包的PID

ps -ef |grep java
1


2 杀掉进程
以boot-server.jar为例

kill -9 24621
1
4. 批量启动jar包
创建sh文件
touch start.sh //创建start.sh文件
1
写入sh文件
vim -v start.sh
i //开启编辑
1
2
单个项目:

#!/bin/sh
jarpath='/usr/local/javaService/app-img.jar'
outpath='/usr/local/javaService/nohup.out'
pid=`ps aux |grep $jarpath  | grep -v grep | awk '{print $2}'`
if [ ! $pid = '' ];
then
    echo '进程'$pid '被杀掉'
    kill -9 $pid
else
    echo "没有该进程"
fi
    nohup java -jar $jarpath --server.port=8082  > $outpath 2>&1 &

# tail -f $logspath //直接查日志
#jarpath 是jar包路径、outpath是日志文件
#该有的空格必须要有,如果报错有可能是空格问题

保存文件

:wq //保存修改信息并退出
1
运行脚本
sh ./start.sh
1
多个jar包写多个路径就可以啦
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值