欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux 后台运行 java -jar 执行jar包

程序员文章站 2022-03-02 18:36:43
...

1. 在Linux中运行jar包: 直接用java -jar xxx.jar,当退出或关闭shell时,程序就会停止掉。

   以下方法可让jar运行后一直在后台运行: 

java -jar XXX.jar &  

问题:

当前窗口不被锁定,输出的日志会显示在屏幕上,当关闭窗口的时候,实验之后并不会停止执行。

2. nohup 不挂断运行的命令,当终端或者账户关闭的时候,程序依旧运行。

    当前的命令默认会把日志输出到nohup.out文件中

nohup java -jar XXX.jar &  


指定输出文件
nohup java -jar XXX.jar >log.out & 

 

linux下根据端口号查询对应进程:

1、命令lsof,以查找占用端口80为例,用法如下:

[[email protected] nginx]# lsof -i:80
[[email protected] nginx]# 

 以上为没有进程占用80端口

[[email protected] sbin]# lsof -i:80
COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   8246   root    6u  IPv4  64233      0t0  TCP *:http (LISTEN)
nginx   8247 nobody    6u  IPv4  64233      0t0  TCP *:http (LISTEN)
[[email protected] sbin]# 

  以上为进程ID为8246和8247的nginx应用,占用80端口

2、命令netstat,以查找占用80端口为例,用法如下:

[[email protected] sbin]# netstat -nlp|grep :80
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      8246/nginx          
[[email protected] sbin]# 

3、命令ps,可以查看已知进程PID的执行目录的详细信息

[[email protected] sbin]# ps -ef | grep 8246
root       8246      1  0 14:56 ?        00:00:00 nginx: master process ./nginx
nobody     8247   8246  0 14:56 ?        00:00:00 nginx: worker process
root       8461   2679  0 15:26 pts/1    00:00:00 grep 8246
[[email protected] sbin]# ps -x | grep 8246  
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
  8246 ?        Ss     0:00 nginx: master process ./nginx
  8463 pts/1    S+     0:00 grep 8246
[[email protected] sbin]# 

linux下根据端口号查询对应进程

java -jar 后台运行

Linux后台运行java -jar