一:远程环境服务启动参数配置
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
二:本地idea配置
- 1:选择Remote
- 2:配置远程服务的host合port,这个要注意,如果是外网或者容器部署,这host和port需要单独配置然后映射到服务或者网关。
- 3:选择部署的服务
三:启动
四:JDWP 协议
JDWP 是 Java Debug Wire Protocol 的缩写,它定义了调试器(debugger)和目标虚拟机(target vm)之间的通信协议。Target vm 中运行着我们要调试的 Java 程序,它与一般运行的 JVM 没有什么区别,只是在启动时加载了 JDWP Agent 从而具备了调试功能。而 debugger 就是我们本地的调试器,它向运行中的 target vm 发送指令来获取 target vm 运行时的状态和控制远程 Java 程序的执行。Debugger 和 target vm 分别在各自的进程中运行,他们之间通过 JDWP 通信协议进行通信。