java -jar 启动服务后,关闭命令窗口后服务停止

java -jar 启动服务后,关闭命令窗口后服务停止

问题:当我们用java -jar命令启动服务后,只有一直保持Xshell的窗口开启且正常连接服务器时才能访问服务,当关闭命令窗口时,服务会停止运行

解决:使用nohup命令启动服务

nohup(no hang up):不挂起

只要通过nohup命令启动服务,服务会一直运行

1.安装nohup,查询nohup是否安装

java 复制代码
# 执行命令
which nohup
java 复制代码
# 如果返回下面结果,表示已经安装过
/usr/bin/nohup

2.配置nohup路径

java 复制代码
vi ~/.bash_profile 

i键编辑,用键盘方向键移动,找到PATH= PATH: HOME/bin,后面加上:/usr/bin

按左上角esc退出编辑,:wq保存并退出

3.刷新配置变量,立即生效

java 复制代码
source ~/.bash_profile 

4.安装成功,查看nohup版本

java 复制代码
nohup --version

出现下面提示,表示安装成功

java 复制代码
[root@worker04 ~]# nohup --version
nohup (GNU coreutils) 8.22
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

5.服务启动,执行启动命令

java 复制代码
# Command:要执行的命令。
# Arg:一些参数,可以指定输出文件。
# &:让命令在后台执行,终端退出后命令仍旧执行。
nohup Command [ Arg ... ] [ & ]

例如:

java 复制代码
nohup java -jar /home/jgt/jgt-admin.jar &

或者,将 nohup 的日志输出到 /dev/null,这个目录会让所有到它这的信息自动消失

java 复制代码
nohup java -jar /home/jgt/jgt-admin.jar > /dev/null 2> /dev/null &

6.服务停止,找到对应服务进程的pid,kill掉进程

java 复制代码
ps -ef | grep jgt-admin.jar

例如:

java 复制代码
[root@worker04 ~]# ps -ef | grep jgt-admin.jar
root      2626 19488  0 09:53 pts/0    00:00:00 grep --color=auto jgt-admin.jar
root     29535     1  3 09:28 ?        00:00:57 java -jar /home/jgt/jgt-admin.jar

停止服务:

java 复制代码
kill -9 29535
相关推荐
晚风吹长发2 分钟前
初步了解Linux中的POSIX信号量及环形队列的CP模型
linux·运维·服务器·数据结构·c++·算法
计算机毕设指导64 分钟前
基于微信小程序的校园二手交易系统【源码文末联系】
java·spring boot·spring·微信小程序·小程序·tomcat·maven
BD_Marathon5 分钟前
设计模式——迪米特法则
java·设计模式·迪米特法则
为什么不问问神奇的海螺呢丶5 分钟前
n9e categraf k8s监控配置 -kube-state-metrics
java·容器·kubernetes
AIR-IT6 分钟前
国产ZYJ服务器RAID 5重建完整流程
服务器·国产·raid·浪潮
时艰.6 分钟前
Java 线程池 — ThreadPoolExecutor
java·开发语言·python
m0_694845576 分钟前
HandBrake 是什么?视频转码工具使用与服务器部署教程
服务器·前端·pdf·开源·github·音视频
Coder_Boy_6 分钟前
企业级项目高并发监控场景-Spring Boot 集成 Graphite & InfluxDB 实战文档
java·spring boot·后端·系统架构
lang2015092811 分钟前
Java EE并发工具:JSR 236详解
java·java-ee
草莓熊Lotso2 小时前
Linux 基础 IO 初步解析:从 C 库函数到系统调用,理解文件操作本质
linux·运维·服务器·c语言·数据库·c++·人工智能