在 IDEA 上远程调试 Java Web 项目

在 catalina.bat 文件的,最上方添加以下代码

1
set JAVA_OPTS=%JAVA_OPTS% -server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=9999,server=y,suspend=n

  • -Xdebug:启用调试特性
  • -Xrunjdwp:启用 JDWP 实现,包含以下选项:
    • transport=dt_socket:JPDA front-end 和 back-end 之间的传输方法。dt_socket 表示使用套接字传输
    • address=9999:JVM 在 9999 端口上监听请求
    • server=y:y 表示启动的 JVM 是被调试者,n 表示启动的 JVM 是调试器
    • suspend=y:y 表示启动的 JVM 会暂停等待,直到调试器连接上(如果从 tomcat 一开始就进行调试,那么必须设置 suspend=y
      接下来再 IDEA 上新增一个 Remote Tomcat

      Host 地址不用加 Http
      Port:为 tomcat 的端口

      这里的 port 为调试端口,1 中所设置的端口一直