介绍:
Java Debug Wire Protocol (JDWP, Java调试线协议);
JDWP 协议:
Packet 的结构
JDWP 传输接口(Java Debug Wire Protocol Transport Interface)
JDWP 的命令实现机制
JDWP 的事件处理机制
JPDA 主要由三个部分组成:Java虚拟机工具接口(JVMTI),Java 调试线协议(JDWP),以及 Java 调试接口(JDI)
使用场景:
本地调试不方便的情况下.需要保证本地和服务器代码保持一致.
一.使用jdwp命令来启动服务
nohup java -Dfile.encoding=UTF-8 -jar -Xms512m -Xmx1024m -Xdebug Xrunjdwp:transport=dt_socket,address=8842,server=y,suspend=n test.jar > test.log &
-Xrunjdwp:通知JVM使用(java debug wire protocol)来运行调试环境;加载JDWP的JPDA参考执行实例
address:监听Socket端口
server:server=y表示当前是调试服务端,=n表示当前是调试客户端
suspend:suspend=n表示启动时不中断,一般用于设置主动连接;suspend=y表示启动时就进入调试模式,一般用于被动连接;
使用 java -agentlib:jdwp=help 可以查看帮助
二.IDEA配置
2.1.添加配置
2.2.添加remote
2.3 配置remote
2.4 启动
2.5 调试
在本地项目中打上断点就可以即可远程调试.