开发调试技巧 Eclipse 远程 debug
开发调试技巧 Eclipse 远程 debug
关于远程 DEBUG,为什么需要远程 Debug
有些场景非常适合远程 debug:
- 需要放在服务端才能执行,又需要 debug 时。
- debug 已经部署的应用。
- 帮别人调试问题,又不想自己启动环境的时候。
远程 debug 很简单,步骤如下:
- 中间件如 tomcat 配置文件 catalina.sh 、catalina.bat 文件中加入如下 java opts 参数:
远程 DEBUG,远程调试
java -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y
java -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y
启动:8787 端口,用于远程 debug,
其中:suspend=y 是命令行停止,等待接入后再运行,suspend=n 是正常启动不等待。
本地 debug 配置:打开 Debug Configurations,左边栏中找到 Remote Java Application 双击,会有如下图的界面,Name:自定义;Project:需要远程 debug 的项目;Host:远程 IP;Port:8787,与步骤 1 所添加配置中的 address 相同;点击 Apply,再点击 Debug 就可以开始远程 debug 了。
补充:
jdk5 以后支持新的命令参数
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8787
jboss 集群的配置在 host.xml