在开发测试过程中,某段程序在开发人员本地是正常的,但是由于某种原因,部署到测试服务器上之后,其功能可能不正常,这在问题的分析排查过程中,往往存在一定难度,现提供一个在idea中远程debug测试服务器上的代码的方法,使得开发人员可以通过本地的代码跟踪应用服务器上的应用。具体步骤如下:
1.在服务器端的启动文件中增加远程debug的处理参数。
tomcat:
在catalina.bata文件中增加“set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5888 ”
weblogic:
在startWeblogic中的某个变量中增加“-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5888 ”如JAVA_OPTIONS=%SAVE_JAVA_OPTIONS% -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5888 ”
2.在idea中配置监听。
Edit configurations->Remote->配置监听,监听的ip地址为服务器ip地址,监听端口为步骤1中的“address”;
3.启动应用服务器。
4.启动idea监听。
5.正常登录业务。
6.在idea中设置断点,debug相关变量。
1.在服务器端的启动文件中增加远程debug的处理参数。
tomcat:
在catalina.bata文件中增加“set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5888 ”
weblogic:
在startWeblogic中的某个变量中增加“-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5888 ”如JAVA_OPTIONS=%SAVE_JAVA_OPTIONS% -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5888 ”
2.在idea中配置监听。
Edit configurations->Remote->配置监听,监听的ip地址为服务器ip地址,监听端口为步骤1中的“address”;
3.启动应用服务器。
4.启动idea监听。
5.正常登录业务。
6.在idea中设置断点,debug相关变量。