Intellij-Idea

IDE 调试端口落入 Windows 排除区间:从 …

IDE 已经完成编译和产物准备,应用服务器却没有进入部署。真正中断启动的是调试器监听器绑定失败:配置的地址无法绑定,日志提示该地址已被使用。

常见判断是“另一个进程占用了端口”。本次现场却出现了一个容易误导排查的现象:稍后检查时,没有普通进程在监听;Windows 返回的排除 TCP 端口区间却包含这个配置值。只修改调试端口后,完整启动链路恢复。

这说明 Windows 上的固定开发监听器不能只做进程占用检查,还要避开机器当前的动态分配范围和显式排除区间。

先把故障放回启动时序

IDE 启动应用服务器时,会依次跨过多个边界:

编译源码
  -> 构建产物
  -> 绑定调试套接字 …

IDE 启动探针报错,而应用已经可用:用时序拆解假 …

IDE 在启动应用时弹出告警,提示无法打开运行配置中的 URL。浏览器稍后访问同一路由却能正常显示,应用也已经开始响应真实请求。告警看起来指向应用故障,用户实际依赖的路由却处于健康状态。

一次成功请求不足以解释这组现象。排查需要确认 IDE 检查了什么、检查发生在何时,以及这项控制面检查能否代表用户访问的应用数据面。

告警和应用描述的是两个时刻

运行配置启用了 IntelliJ IDEA 的 After launch,并填写了一个外部 URL。JetBrains 文档说明,该选项会在服务器和配置的产物启动后打开浏览器,URL 字段用于指定目标页面(Tomcat 运行配置)。

现场有四组看似冲突 …