我有完全一样的一个同样的问题:Terminating mvn spring-boot:run doesn't stop tomcat春季启动tomcat的终止
答案有说,它只是发生在Windows,但它不是真的。我在使用Intellij的OSX上运行spring boot,当我停止spring引导应用程序时,嵌入式tomcat仍在运行。这是Spring引导教程中的简单示例应用程序。任何解决方案
我有完全一样的一个同样的问题:Terminating mvn spring-boot:run doesn't stop tomcat春季启动tomcat的终止
答案有说,它只是发生在Windows,但它不是真的。我在使用Intellij的OSX上运行spring boot,当我停止spring引导应用程序时,嵌入式tomcat仍在运行。这是Spring引导教程中的简单示例应用程序。任何解决方案
我遇到了同样的问题,作为结果,我必须重新审视这个页面和相关的一个上的所有解决方案。没有人对我有好处。这就是为什么我进行了小范围的研究,看起来捕获的TCP端口出现问题是因为Gradle和mvn都不知道使用TCP端口进行子操作。
所以不是杀人过程只需要使用命令:
$ gradlew –stop
(我希望同样存在mvn
)
该命令可正常关闭的摇篮启动的守护程序,并释放被Tomcat端口抓获。
我在MAC上的intellij中有完全相同的问题(spring boot 1.1.6.RELEASE)。
我工作围绕它通过使用弹簧启动致动器提供了一个休息的端点(POST)来关闭应用:
localhost:port/shutdown
这可以通过命令行来调用:例如curl -X POST localhost:port/shutdown
,使弹簧的引导驱动器添加以下编译DEP:
org.springframework.boot:spring-boot-starter-actuator
我创建了一个任务的gradle其中bootStop不运行这个CMD我。 你可以做同样的行家或 你可以从CMD行调用它(也线槽的IntelliJ终端)
特别是如果你想使用调试,你应该换上面给出的卷曲cmd在一个gradle产出/行家任务。
参见工作示例(gradle这个)here
一个简单的解决方案是创建一个“春天启动”配置和使用开始,而不是“摇篮”配置您的应用程序。 “Spring Boot”配置不会遇到此问题。
这里是弹簧启动的致动器配置HTTP端点关闭的弹簧引导web应用程序行家例如:
1.Maven的pom.xml:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
2.application.properties:
#No auth protected
endpoints.shutdown.sensitive=false
#Enable shutdown endpoint
endpoints.shutdown.enabled=true
所有端点列出here:
3.Send POST方法来关闭应用:
curl -X POST localhost:port/shutdown
可能重复[终止mvn spring-boot:运行不会阻止tomcat](http://stackoverflow.com/questions/23432651/terminating-mvn-spring-bootrun-doesnt-stop-tomcat) – Farkie
答案重复也表示这是一个已知的问题,已在1.1.0快照中解决。你尝试过吗? –
我在1.1.4.BUILD-SNAPSHOT,它仍然发生。 –