1.首先把远程服务器上面需要调试的代码放在IDE里面
2.在菜单栏选择run ->edit Configuration,点击+号,选择remote,然后在配置项里面输入远程需要调试机器的IP地址和所对应的端口号,最后在最上面输入该次一远程调试的项目名字,方便自己区分不同的项目
3.将配置项中的-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5080添加到JAVA_OPTS的属性中,重启远程tomcat服务器
3.再次选择菜单条run按钮,找到debug+“自己设置的项目名字”,点击然后就可以进行远程debug调试
4.在本地项目中设置断点,然后访问远程机器上面的IP和端口,然后就可以在本地debug调试了
然后将得到的一串参数,上图中的 -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=17902 拷贝下来。
假如,原先的启动命令为:
将上面拷贝下来的内容加在程序启动命令上面,最后变成了:
首先,远程服务器的程序使用新启动命令重新启动,然后本地启动刚刚新建的 Remote JVM Debug Application ,稍等一会,当连接建立成功后,控制台会出现如下图所示的内容:
最后,Enjoy!
在本机进行开发用tomcat部署时我们可能会在tomcat/bin/catalina.sh配置如下debug参数进行调试:
但是在远程服务器上同样的配置却在启动调试时报错:
检查Remote配置:
IP和端口号都没问题但是"Connection refused",于是我们检查服务器16808端口情况:
可见当前16808端口服务被绑定了回环地址,外部无法访问,说明JAVA_OPT里address如果不指定ip会默认绑定到本机,如果是要提供远程调试的服务器上的工程,就需要指定当前服务器地址才行,问题于是解决。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)