在Linux系统中运行JAR程序,可以使用以下几种方法:
阻塞式运行
```bash
java -jar xxxxx.jar
```
这种方式下,当前终端的会话窗口会被阻塞,按`CTRL + C`可以中断程序的运行,或直接关闭会话窗口,程序会随之退出。
后台运行
```bash
java -jar xxxxx.jar &
```
使用`&`符号可以将程序放到后台运行,这样当前终端的会话窗口不会被阻塞。但是,如果关闭当前窗口,程序会终止运行。
不挂断运行
```bash
nohup java -jar xxxxx.jar &
```
`nohup`命令可以使得程序在不挂断的情况下运行。即使用户退出或终端关闭,程序也会继续运行。默认情况下,程序的输出会被重定向到`nohup.out`文件中,除非另外指定了输出文件。
指定输出文件
```bash
nohup java -jar xxxxx.jar > output.log &
```
通过`>`符号可以将程序的输出重定向到指定的文件,例如`output.log`,这样程序的输出就不会显示在屏幕上,而是保存到`output.log`文件中。
查看后台运行任务
```bash
jobs
```
使用`jobs`命令可以查看当前后台运行的所有任务,每个任务前面都有一个编号。如果需要将某个任务调回前台控制,可以使用`fg + 编号`命令。
关闭后台运行的程序
```bash
ps -ef | grep java
kill -9 PID
```
首先,使用`ps -ef | grep java`命令找到Java程序的进程号(PID值),然后使用`kill -9 PID`命令终止该进程。
建议
推荐使用:如果不希望程序在终端关闭后停止,建议使用`nohup`命令进行后台运行,并指定输出文件以便于后续查看日志。
开机自启:如果需要程序在系统启动时自动运行,可以创建相应的启动脚本,并配置系统服务来实现。