请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

IDEA 远程 debug 无法运行问题

老师你好, 前面的微信开发者访问和页面的编码问题都在老师的回答下解决了, 非常感谢老师. 现在我用 IDEA 进行远程 debug 失败, 下面是一些关键配置, 希望老师能给出问题可能在那里
首先是 catalina.sh 中的设置 :

CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8888"

这个设置我重启了 tomcat 来保证配置生效, 使用 ps -ef |grep tomcat 来查询信息时也出现 :

-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8888

证明配置也生效了

图片描述

这说明我的服务器上程序也是没有问题的, 可以跑通
最后是 IDEA 的相关配置, 也是看到老师给其他同学的链接后配置的
图片描述

在 IDEA 的 Console 中只有下面两行显示 :

Connected to the target VM, address: '47.98.36.115:8888', transport: 'socket'
Disconnected from the target VM, address: '47.98.36.115:8888', transport: 'socket'

在服务器上查看 catalina.out 的日志, 并没有看到任何和 debug 相关的信息.
麻烦老师看一下可能是哪里的问题. 谢谢老师.

正在回答 回答被采纳积分+3

1回答

翔仔 2020-02-27 01:42:44

同学好,请问具体的失败是如何表现出来的?没有在断点停住还是?建议可以在断点的地方打些日志,如果看到日志但是没有落在断点的话,才能证明远程debug不生效,如果debug不生效,就可能和防火墙之类的有关,具体还得根据配置一步步去排查。

0 回复 有任何疑惑可以回复我~
  • 提问者 姜岑 #1
    失败的表现就是上面的 Console 中显示连接上又断开, 在  catalina.out 的日志中输出如下 : 
    ERROR: transport error 202: recv error: Connection reset by peer
    Listening for transport dt_socket at address: 8888
    之前 8888 端口被占用, 我 kill 了相关的进程, 现在就显示这个日志了, google 也没有找到有用的信息.
    lsof -i:8888 显示如下 : 
    java    29148 work    4u  IPv4 490534      0t0  TCP *:ddi-tcp-1 (LISTEN)
    回复 有任何疑惑可以回复我~ 2020-02-27 09:49:19
  • 翔仔 回复 提问者 姜岑 #2
    同学好,这个就跟防火墙相关了,调试的时候连接被重置
    Yesterday everything worked fine, now nothing - same error as you gave. I found out that network admins made some changes in the meantime. Some firewall stuff. Problem is that Eclipse tries to establish connection to JVM at "localhost" (and some random port). When I tried pinging localhost (or 127.0.0.1) I got following:
    估计得换端口,在安全组试试,或者关掉防火墙。实在调试不了,可以继续往下,毕竟可以通过打日志调试
    回复 有任何疑惑可以回复我~ 2020-02-27 17:52:02
  • 提问者 姜岑 回复 翔仔 #3
    好的,谢谢老师
    回复 有任何疑惑可以回复我~ 2020-02-27 17:52:40
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信