背景介绍
开发过程中,我们经常会遇到部署的代码运行出问题、看日志由不是很直观、我们希望可以像调试本地代码一样去调试远程代码;
IDEA提供了Remote工具,基于JVM的跨平台能力,我们可以远程调试部署的代码。
前提
保证远程和本地跑的代码是一致的
操作
第1步:修改linux启动脚本,需要添加相关参数
修改linux启动脚本步骤
1、进入启动脚本目录
cd etc/init.d2、修改服务启动脚本
vim 服务启动脚本3、-jar和-Djava.net中间追加-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005,注意可能会修改多处
-jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 -Djava.net.XXX4、重启微服务
service 服务启动脚本 restart5、产看监听状态
netstat -anp | grep 5005
可以注意到:切换不同的jdk版本,生成的脚本不一样
选择 jdk1.4,则为
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
这就是你为什么搜其他博客,会有这种配置的原因,其实这个配置也是可行的。但更准确应该按照下面jdk5-8的配置
选择 jdk 5-8,则为
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
选择 jdk9以上,则为
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005
第2步:idea 配置remote
第3步:debug方式启动监听
参考
使用IDEA远程debug调试(一篇懂所有)
IDEA Remote 远程调试