在 Linux 中,使用 nohup 命令可以在后台运行 Java 程序,并且不受终端关闭的影响。以下是具体步骤:
编写启动脚本(可选): 为了方便管理和监控,可以编写一个简单的 shell 脚本来启动 Java 程序。
#!/bin/bash
nohup java -jar your-java-app.jar > output.log 2>&1 &
这个脚本的作用是:
nohup:忽略挂起信号,确保程序在终端关闭后继续运行。java -jar your-java-app.jar:启动 Java 程序。> output.log:将标准输出重定向到 output.log 文件。2>&1:将标准错误输出重定向到标准输出,即也写入 output.log 文件。&:将命令放入后台运行。赋予脚本执行权限: 如果你创建了启动脚本,记得赋予它执行权限。
chmod +x start-java-app.sh
运行脚本: 直接运行脚本即可启动 Java 程序。
./start-java-app.sh
或者直接在命令行中使用 nohup 命令:
nohup java -jar your-java-app.jar > output.log 2>&1 &
查看日志:
启动后,可以通过查看 output.log 文件来监控程序的输出。
tail -f output.log
这个命令会实时显示 output.log 文件的最新内容。
停止程序:
如果需要停止后台运行的 Java 程序,可以使用 ps 命令找到进程 ID(PID),然后使用 kill 命令终止进程。
ps -ef | grep your-java-app.jar
找到对应的 PID 后,使用以下命令终止进程:
kill -9 <PID>
通过以上步骤,你可以在 Linux 中使用 nohup 命令在后台运行 Java 程序,并且确保程序在终端关闭后继续运行。