一、场景:
1、实际项目开发中,为了方便定位问题,需要远程debug逐步调试代码。
二、远程debug原理:
1、实际是两个JVM进行远程通信,通讯的方式通过socket方式。
2、socket方式两种,Socket Listen和Socket Attach。Socket Listen是远程服务器JVM配置指定客户端的JVM,Socket Attach是客服端JVM连接远程服务器的JVM。
三、具体配置:(以Socket Attach为例)
1、远程tomcat配置:
(1)在tomcat的catalina.sh文件里面进行配置,
JAVA_OPTS="-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7002"
远程端口号为7002;
(2)IDEA中配置远程连接:
(3)运行定义好的连接:
控制台打印内容如上,代表连接成功。
(4)打断点进行正常debug。
四、需要注意的点:
1、要保证本地代码和远程的代码一致;
2、端口号需要确认开启。