当前位置: 首页 > 图灵资讯 > 技术篇> nohup java -jar 多个jar 启动

nohup java -jar 多个jar 启动

来源:图灵教育
时间:2023-07-27 10:51:24

使用 nohup 启动多个 JAR 文件

在开发和部署中 Java 我们通常把应用程序打包成应用程序 JAR 当我们需要同时启动多个文件时。 JAR 可在文件中使用 nohup 命令使应用程序在后台运行,不受终端会话的影响。

什么是 nohup?

nohup 是一个 Unix/Linux 操作命令时忽略挂断信号的命令。它的功能是使命令在后台运行,并在终端会话关闭后继续运行。使用 nohup 启动命令将输出信息重新定位为一个名称 "nohup.out" 在文件中,您可以随时查看命令的输出。

使用 nohup 启动单个 JAR 文件

首先,让我们看看如何使用它。 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.jarapp2.jarapp3.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 文件有帮助。

以上是代码示例,您可以根据实际需要修改和扩展这些示例代码。