当我尝试在我的 Spring Tool Suite 中修改 Spring 项目时,我遇到了奇怪的事情。在第一次加载(部署)时一切正常,应用程序编译并在 localhost:8080 上运行
当我更改代码中的某些内容并尝试重新部署它(再次运行 - 作为 Spring Boot 应用程序运行)时,我收到错误消息
\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* 应用程序无法启动
描述:
配置为侦听端口 8080 的 Tomcat 连接器无法启动。该端口可能已在使用中,或者连接器可能配置错误。
行动:
验证连接器的配置,识别并停止正在侦听端口 8080 的任何进程,或将此应用程序配置为侦听另一个端口。
2016-10-19 00:01:22.615 INFO 10988 — [main] ationConfigEmbeddedWebApplicationContext:关闭 org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@3023df74:启动日期 [Wed Oct 19 00:01:19 CEST 2016];上下文层次结构的根 2016-10-19 00:01:22.616 INFO 10988 — [main] osjeaAnnotationMBeanExporter:在关机时注销 JMX 公开的 bean
如果我手动关闭该端口上的进程,一切都会再次正常工作,但这不是重新部署 Spring 应用程序的正确方法。我在这里做错了吗?
我正在使用 :: Spring Boot :: (v1.4.1.RELEASE)
PS 我知道我可以设置某种热交换机制来在我更改代码后自动重新加载页面,但现在我想先解决这个问题。
感谢您提供任何帮助或信息。
原文由 milan.latinovic 发布,翻译遵循 CC BY-SA 4.0 许可协议
即使我们在 IDE 中借助 红色按钮 停止运行进程,有时也会发生这种情况,我们仍然会遇到同样的错误。
已通过以下步骤解决,
netstat -ao |find /i "listening"
我们得到关注
TCP 0.0.0.0:7981 machinename:0 LISTENING 2428 TCP 0.0.0.0:7982 machinename:0 LISTENING 2428 TCP 0.0.0.0:8080 machinename:0 LISTENING 12704 TCP 0.0.0.0:8500 machinename:0 LISTENING 2428
即端口号和他们正在收听的 进程 ID
Taskkill /F /IM 12704
(注意:提及正确的进程ID)有关详细信息,请访问这些链接 Link1 和 Link2 。