基于eclipse的远程debug

很多时候我们会由于本地和服务器的一些环境有所区别; 或者说由于数据的问题,导致没法在本地重现问题; 这样就需要我们需要远程debug,分析问题的原因.

其实eclipse与IDE步骤差不多, 我简单介绍下eclipse的配置策略;
1.如果有些服务器做了白名单, 得把你本地的机器的ip加进去;

2.需要在启动脚本中加入以下的启动参数:JAVA_OPT=”-Xdebug -Xrunjdwp:transport=dt_socket,address=9555,server=y,suspend=n”;
nohup启动应用:
nohup /usr/local/java/bin/java JAVA_OPTS applicationName >> nohup.log 2>&1 & echo ! > $PID_FILE
其他的方式启动,脚本是一样,只需要把JAVA_OPT添加到启动参数中即可。

参数说明
-Xdebug:是通知JVM工作在DEBUG模式下,
-Xrunjdwp:是通知JVM使用(java debug wire protocol)来运行调试环境
transport:是监听Socket端口连接方式
address: 监听端口,以接收debug客户端发起的TCP连接。
server =y: 表示在remote debugging会话中作为服务端
suspend =y :表示在客户端建立连接前,服务端被挂起;=n 则不会被挂起。

3.客户端设置
1). 打开eclipse工作台
2). 选择“Run->Debug Configutations”菜单项
3). 选择“Remote Java Application”,在右键弹出菜单中选择“New”
4). 在Connect标签项中配置连接参数,远程主机的IP和端口(由于在我们设置的是9555,客户端则设置9555)

注意:
如果suspend设置成了=y,服务端会一直监听该端口并且等待,也就是会一直等到客户端连接上了服务端才会继续运行。 如果是调试启动的错误,则建议设置为y会比较有用。

猜你喜欢

转载自blog.csdn.net/xuxian6823091/article/details/80626621