Sprint引导应用程序关闭

时间:2017-08-18 07:59:47

标签: java linux spring-boot

我有一个侦听JCAPS的Spring Boot应用程序。连接是耐用的。 当我使用

关闭应用程序时
Curl -X POST ip:port//shutdown

应用程序未完全关闭。我在grep进程时可以看到PID。所以我试图用

杀死
Kill -15 PID

Kill -SIGTERM PID

PID已消失,但对JCAPS主题的订阅仍处于活动状态。因此,当我重新启动应用程序时,我无法使用相同的订户名称连接到同一主题。

请帮忙了解如何正确关闭弹簧启动应用程序。

1 个答案:

答案 0 :(得分:0)

在pom.xml中添加以下依赖项

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>

在application.properties中设置以下属性

management.endpoints.web.exposure.include=*
management.endpoint.shutdown.enabled=true
endpoints.shutdown.enabled=true

然后启动spring-boot应用程序

您要按照curl命令关闭应用程序运行

curl -X POST本地主机:端口/执行器/关闭

参考:https://www.baeldung.com/spring-boot-shutdown