eclipse远程调试tomcat
最近做一个和三方联调的项目,需要异步回调到指定的公网IP,但是本地没有独立的IP,用花生壳或者自己搭建pptpd vpn比较繁琐,相比来说用eclipse直接远程调试比较方便。
首先:
修改tomcat/bin/catalina.sh中的参数:
CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
参数说明:
-Xdebug : 启用调试模式 -Xrunjdwp<sub-options> : 加载JVM的JPDA参考实现库 transport=dt_socket :Socket连接,可选dt_shmem 通过共享内存的方式连接到调试服务器 address=8080 :调试服务器监听的端口 server=y : 是否是服务器端,n为客户端 suspend=n : 启动过程是否加载暂停,y为启动时暂停,方便调试启动过程
window下的参数:
Set “CATALINA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
然后启动 tomcat ,查看日志中是否有:
Listening for transport dt_socket at address: 8000
然后设置eclipse远程调试:
点击debug,就可进行调试了
如果遇到 报错:
Failed to connect to remote VM. Connection refused.
Connection refused: connect
出现如图所示的情况可能是已经建立了一个连接了:
找到点击 断开链接,就可以解决问题了