前言
首先,我们要让要让远程服务器支持远程调试功能,在项目启动项上追加特定的 JVM 参数
- 晚于 JDK 1.4.X 版本(最新版本)
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8008
- JDK 1.4.X 版本
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8008
- JDK 1.3.X 或早起版本
-Xnoagent -Djava.compiler=NONE -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8008
服务器端配置
JAR包启动项目
nohup java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8008 sto-fullnetwork-recipientinfo-query-service.jar >/dev/null 2>&1 &
Tomcat 容器启动项目
项目部署环境是 Tomcat 7 + Java 7 ,在 catalina.sh中设置 CATALINA_OPTS即可
CATALINA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8008
idea配置
Run===》Edit Configurations...===》点击加号===》Remote===》设置Name,设置远程服务器的Host和Port

Debug调试过程
- 本地项目代码需要和服务器上部署的代码完全一样
- 启动Tomcat,保证服务器程序正常启动
- idea上的设置,Run===》Debug RemoteDebug===》Console上显示,Connected to the target VM, address: ‘IP:8008’, transport: ‘socket’
- 在本地代码相应的位置上打上断点
- 请求远程服务,即可在idea本地代码中debug调试远程代码
本文介绍Java远程Debug调试方法。先让远程服务器支持调试,在项目启动项追加特定JVM参数,针对不同JDK版本有不同设置。服务器端配置分JAR包启动和Tomcat容器启动项目。还说明了idea配置及Debug调试过程,需本地与服务器代码一致,设置好后可在本地debug远程代码。
567

被折叠的 条评论
为什么被折叠?



