使用 nohup 启动多个 JAR 文件
在开发和部署中 Java 我们通常把应用程序打包成应用程序 JAR 当我们需要同时启动多个文件时。 JAR 可在文件中使用 nohup
命令使应用程序在后台运行,不受终端会话的影响。
nohup
是一个 Unix/Linux 操作命令时忽略挂断信号的命令。它的功能是使命令在后台运行,并在终端会话关闭后继续运行。使用 nohup
启动命令将输出信息重新定位为一个名称 "nohup.out" 在文件中,您可以随时查看命令的输出。
首先,让我们看看如何使用它。 nohup
启动单个 JAR 假设我们有一个名字 myapp.jar
应用程序可以通过以下命令启动:
nohup java -jar myapp.jar &
以上命令:
nohup
:操作命令时忽略挂断信号。java -jar myapp.jar
:启动 Java 并执行虚拟机myapp.jar
。&
:使命令在后台运行。
在执行上述命令后,应用程序将在后台运行,输出信息将被重定向 nohup.out
在文件中。您可以使用以下命令查看输出信息:
tail -f nohup.out
使用 nohup 启动多个 JAR 文件当需要同时启动多个 JAR 在文件中,我们可以在命令中列出多个文件 JAR 实现文件的方式有三种。例如,我们有三个 JAR 文件 app1.jar
、app2.jar
和 app3.jar
,同时使用以下命令启动它们:
nohup java -jar app1.jar & java -jar app2.jar & java -jar app3.jar &
我们使用上述命令 &
符号将多个命令连接在一起,表示这些命令同时执行。每个命令启动一个独立的 JAR 文件。
执行上述命令后,三个应用程序将在后台同时运行,其输出信息将分别重新定向 nohup.out
文件中。您可以使用它 tail -f
命令查看每个应用程序的输出信息。
tail -f nohup.out
用脚本启动多个脚本 JAR 文件为了便于管理和启动多个项目 JAR 我们可以编写一个脚本来自动化这个过程。以下是脚本的示例 start.sh
:
#!/bin/bashJARS=("app1.jar" "app2.jar" "app3.jar")for jar in "${JARS[@]}"do nohup java -jar "$jar" &done
在上述脚本中,我们使用了一个数组 JARS
存储所有需要启动的东西 JAR 文件的名称。然后,使用它 for
循环逐一启动这些 JAR 并使用文件 nohup
命令使它们在后台运行。
操作脚本时,可使用以下命令:
chmod +x start.sh./start.sh
执行脚本后,一切 JAR 文件将在后台同时运行,其输出信息将分别重新定位到各自的位置 nohup.out
文件中。
使用 nohup
命令可以在后台轻松运行多个命令 JAR 不受终端会话影响的文件。通过将启动命令放入脚本,我们可以更方便地管理和启动多个项目 JAR 文件。希望本文能理解如何使用。 nohup
启动多个 JAR 文件有帮助。
以上是代码示例,您可以根据实际需要修改和扩展这些示例代码。