说明
JPDA: Java Platform Debugger Architecture
JDI : Java Debug Interface
JDWP: Java Debug Wire Protocol
配置-tomcat
启用JPDA:
JVM命令行+
-Xdebug -Xrunjdwp:transport=dt_socket, address=8000,server=y,suspend=y
-Xdebug: 启用调试特性
-Xrunjdwp :启用JDWP实现,它包含若干子选项:
transport=dt_socket : JPDA front-end和back-end之间的传输方法。dt_socket表示使用套接字传输。
address=8000 : JVM在8000端口上监听请求。
server=y : y表示启动的JVM是被调试者。如果为n,则表示启动的JVM是调试器。
suspend=y : y表示启动的JVM会暂停等待,直到调试器连接上。
suspend=y这个选项很重要。如果你想从Tomcat启动的一开始就进行调试,那么就必须设置suspend=y。
address可以配置本机, 通过socat连接限制连接范围,管控安全性.
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=127.0.0.1:9001
socat TCP4-LISTEN:9090,fork,range=100.80.180.179/24 TCP4:127.0.0.1:9001
配置-idea
1.打开Debug的Configurations
2.配置IP和端口
3.点击Debug