服务端程序运行在一台远程服务器上,我们可以在本地服务端的代码(前提是本地的代码必须和远程服务器运行的代码一致)中设置断点,每当有请求到远程服务器时时能够在本地知道远程服务端的此时的内部状态
要让远程服务器运行的代码支持远程调试,则启动的时候必须加上特定的JVM参数
tomcat启动修改文件catalina.sh
在首行添加
CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
然后重启服务,这样服务器就开启了远程debug模式
SpringBoot 启动
java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000 springboot-test-1.0-SNAPSHOT.jar
本地连接远程debug端口
在idea中配置Remote
填写对应远程ip和debug端口
启动远程debug模式
出现
Connected to the target VM, address: 'xxx.xxx.xxx.xxx:8000', transport: 'socket'
说明远程连接