eclipse远程调试

在开发调试程序当碰到本地功能正常而测试环境出现问题时需要用到远程调试的功能。现针对eclipse下远程调试服务器上的web程序或者java程序作出总结

eclipse远程调试java程序

第一步:远程服务器上的java程序以调试模式启动并指定调试端口

如下截图在远程服务器上用java命令以调试模式启动dubbo服务的java程序并指定调试端口为9990(这个端口后面会用到)

nohup java -Xdebug -Xrunjdwp:transport=dt_socket,address=9990,server=y,suspend=n com.alibaba.dubbo.container.Main > /local/tmp/debug.logs 2>&1 &

第二步:在eclipse中配置远程调试并打上断点以debug模式启动与服务器上同样的程序(开始调试前需要确保本地服务代码与远程服务器上的代码一致)


  • 在eclipse的java启动类中右键->Debug As->Debug Configurations


  • 创建一个远程调试服务


  • 设置服务调试信息,注意端口与服务器上的服务调试商品保持一致并且本地到远程服务器的网络畅通,设置完成后点击Debug将本地服务以调试模式启动


  • 启动成功后会出现如下图红框内所示的图标(调试完成后也可点击该图标断开远程调试)


  • 如下图所示为我本地接收到远程服务器上的请求进而可以进行远程调试的效果图

eclipse远程调试tomcat程序

  • 修改tomcat的启动脚本startup.bat。复制startup.bat为startup-debug.bat,然后打开startup-debug.bat,找到call "%EXECUTABLE%" start %CMD_LINE_ARGS%这一行,修改为“call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS%”,然后在上面添加三行:

    set JPDA_TRANSPORT=dt_socket

    set JPDA_ADDRESS=9000

    set JPDA_SUSPEND=n

  • 设置好服务器以debug模式启动并指定端口后,仍然如前面所述在本地tomcat启动参数中加入远程调试参数并启动即可对远程环境上的相应程序进行调试

By the way:如果你的远程linux服务器开启了防火墙,且你在eclipse里开启远程调试时报错connection refused,connect timeout,需要检查一下是否未开通对应调试端口的防火墙访问权限,按如下方式添加:

1、linux开放服务端口

vi /etc/sysconfig/iptables

加入如下内容

 -A INPUT -p tcp -m tcp --dport 6001 -j ACCEPT 
2、保存退出,重启服务 service iptables restart










  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值