在 Linux 中,nohup 命令用于在不挂断终端的情况下运行程序。这对于长时间运行的 Java 程序特别有用。以下是如何使用 nohup 命令运行 Java 程序的步骤:
-
打开终端。
-
导航到包含 Java 程序的目录。例如,如果您的 Java 程序位于
/home/user/my-java-app目录中,请使用以下命令:cd /home/user/my-java-app -
确保您已正确设置
JAVA_HOME环境变量,并且java命令可在终端中使用。您可以通过运行以下命令检查JAVA_HOME:echo $JAVA_HOME如果未设置
JAVA_HOME,请根据您的系统和 Java 安装位置进行设置。例如,在某些系统上,您可能需要添加以下行到您的~/.bashrc或~/.bash_profile文件中(请根据您的实际 Java 安装路径进行修改):export JAVA_HOME=/path/to/your/java export PATH=$PATH:$JAVA_HOME/bin然后,运行
source ~/.bashrc或source ~/.bash_profile使更改生效。 -
使用
nohup命令运行 Java 程序。假设您的 Java 程序的主类名为com.example.MyApp,并且已将其打包为名为my-app.jar的 JAR 文件。您可以使用以下命令运行此程序:nohup java -jar my-app.jar > output.log 2>&1 &这将在后台运行 Java 程序,并将所有输出(包括标准输出和错误输出)重定向到名为
output.log的文件。&符号使程序在后台运行,即使您关闭终端也不会中断。 -
您可以使用
tail命令查看output.log文件的内容,以监控程序的输出:tail -f output.log -
当您需要停止 Java 程序时,可以在另一个终端窗口中找到其进程 ID(PID),然后使用
kill命令终止它。首先,使用以下命令找到进程 ID:ps -ef | grep my-app.jar在输出中找到 Java 程序的进程 ID(通常位于第二列),然后使用以下命令终止进程:
kill将
替换为您在上一步中找到的进程 ID。
以上就是关于“Linux中如何使用nohup命令运行Java程序”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm