停止许多特定的 Spring Boot 应用程序

Posted

技术标签:

【中文标题】停止许多特定的 Spring Boot 应用程序【英文标题】:Stopping specific Spring Boot applications among many 【发布时间】:2018-07-03 05:32:23 【问题描述】:

我有几个 Spring Boot 应用程序 jar 已通过运行启动:

java -jar Application1.jar
java -jar Application2.jar
java -jar Application3.jar

我想停止一个特定的 Spring Boot 应用程序(例如Application1),但是当我列出所有正在运行的进程时,我会得到一个类似的列表:

Image Name                     PID Session Name        Session#    Mem Usage
========================= ======== ================ =========== ============
java.exe                     17932 Console                    1     70,928 K
java.exe                     15666 Console                  ...      .......

如何停止特定的 Spring Boot 进程?

或者有没有办法启动一个 Spring Boot 应用程序并给它一个自定义进程的名称,以便我以后可以停止它?

【问题讨论】:

您是否在某个特定端口上启动了这些?@hydradon @rdj7 是的,我在属性文件中有一个端口号 如果 Application1.jar、Application2.jar、Application3.jar 包含属性文件,说明它在哪个端口上运行,那么您可以关注***.com/questions/40118878/… 如果您使用的是 Linux,您可以将 Spring Boot 应用程序部署为单独的服务。 【参考方案1】:

    需要查看哪些进程在哪个端口上运行,使用如下命令

    netstat -ao |find /i "listening"

2.正如您提到的,您拥有需要停止的特定应用程序的端口号。例如,您需要停止在端口 8080 上运行的应用程序。注意该特定端口号的进程 ID(端口的最后一列:8080 进程 ID:14024)

3.停止在你的端口号Taskkill /F /IM 14024运行的进程 你会得到以下结果。

希望这会有所帮助!

【讨论】:

以上是关于停止许多特定的 Spring Boot 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot Docker 应用程序

Spring Boot应用的启动和停止(Spring Boot应用通过start命令启动)

停止 spring boot 应用程序启动,直到 spring cloud config server 启动

基于 Spring Boot (Tomcat) 的应用程序作为守护进程 - 如何停止?

Gradle > 如何停止使用 gradle bootRun 启动的 Spring Boot 应用程序?

当 logging.config 指向 logfj2 外部配置文件的错误文件位置时,spring-boot 应用程序停止