商城网站项目策划书,二级网站建设要求,用vue开发的网站,网络图怎么绘制IDEA关闭SpringBoot程序后仍然占用端口的排查与解决
问题描述 在使用 IntelliJ IDEA 开发 Spring Boot 应用时#xff0c;有时即使关闭了应用#xff0c;程序仍然占用端口#xff08;例如#xff1a;4001 端口#xff09;。这会导致重新启动应用时出现端口被占用的错误有时即使关闭了应用程序仍然占用端口例如4001 端口。这会导致重新启动应用时出现端口被占用的错误在windows系统下有时候执行命令netstat -ano | findstr 4001也无法找到被占用的端口本文将详细描述如何解决此问题。 1 问题复现
启动springboot应用后提示端口已经被占用
2 排查步骤
1 确认端口占用情况 使用以下命令检查哪个进程占用了目标端口
netstat -ano | findstr :端口号示例检查 4001 端口是否被占用。
netstat -ano | findstr :4001正常端口被占用情况下会显示如下画框部分13036为应用程序PID
2 找到占用端口的进程 ID 在win11下可以直接使用任务管理器搜索PID找到占用端口的程序例如搜索到4001端口被QQ占用 或者cmd命令框输入如下命令查找
tasklist | findstr 130363 终止占用端口的进程 直接任务管理器关闭程序
使用以下命令强制终止该进程
taskkill /PID PID /F示例
taskkill /PID 13036 /F注意极端情况下idea运行spirngboot程序时由于强制关闭或者其他原因造成java程序没有彻底释放还在后台运行导致原java程序始终占用着端口具体表现为
启动后端口任被占用 查找被占用的4001端口时显示空白找不到
解决方法 检查是否有残留的 Java 进程tasklist | findstr java如果发现多余的 Java 进程强制结束它taskkill /f /pid PID示例强制删除多余的java线程。
netstat -ano | findstr :22084
netstat -ano | findstr :22320删除完毕后重新启动springboot程序端口占用解除启动成功。