原理

Java程序远程Debug方法 - 图1

一、远程服务开启 debug

远程服务启动命令:

  1. $ java -jar -agentlib:jdwp=transport=dt_socket,server=y,address=4001 spring-boot-default-0.0.1-SNAPSHOT.jar

参数解释:
-agentlib:<libname>[=<选项>]:加载本机代理库 <libname>,例如 -agentlib:jdwp
jdwp:java debug wire protocol
transport=dt_socket:以 socket 协议进行通信
server=y:开启调试服务端
address=4001:debug 通信端口

二、在IDEA中连接远程服务

在 IDEA 中连接远程服务:
image.png
Host:远程服务 ip
Port:远程服务 debug 通信端口
Use module classpath:本地代码
Command line arguments for remote JVM:IDEA 提示启动远程服务时需要增加的参数

测试

启动 IDEA debug:
image.png
image.png
启动远程服务:
image.png
打个断点,访问一下试试:
image.png