开发过程技巧小结——eclipse远程调试

由于之前对需要部署到远程集群中的程序调试毫无经验,经过搜索,发现java本身支持远程调试,再加上有eclipse这种利器,便是非常方便的了。因此转载操作步骤如下。

转载地址:https://i-blog.csdnimg.cn/blog_migrate/5fcd071411cf5ddabea53bf7fcd0a773.png

+++++++++++++++++++++++++++++++++++++++分割线+++++++++++++++++++++++++++++++++++++++++++++++

主导是JPDA(Java Platform Debugger Architecture), 它支持java中的各种调试,由两个接口(JVM Tool Interface和JDI)、一个协议(JDWP)和两个用于合并它们的软件组件(后端和前端)组成。参见http://www.ibm.com/developerworks/cn/opensource/os-eclipse-javadebug/

JDWP(Java Debug Wire Protocol):JVM支持远程调试,eclipse也支持JDWP,所以只要在各个模块的JVM启动时添加如下参数即可:

[html]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
  1. -Xdebug -Xrunjdwp:transport=dt_socketaddress=8000,server=y,suspend=y  

-Xdebug是在启动调试

-Xrunjdwp是启动JDWP调试的实现,后面的是对于JDWP的参数:

transport=dt_socket.JDWP front-end 和 back-end之间的传输方法。当前选项表示是使用socket传输。

address=8000. 监听调试的端口

server=y. 表示当前启动的是被调试的对象。n就是表示当前启动的是调试对象。

suspend=y. 表示当前启动的JVM会暂时等待,知道调试器连接上才会继续执行。这样给对方以准备参与debug的时间。n就不会等待了。



Tomcat-------- 把tomcat的bin下的catalina.bat或则catalina.sh中的参数CATALINA_OPTS改为上面的

Hadoop-------- 把hadoop的conf下的hadoop-env.sh里的HADOOP_NAMENODE_OPTS改为上面的

Hbase--------- 把hbase的conf下的HBASE_MASTER_OPTS。。。。


综上一下,基本上这些远程调试的改写地方都是在启动文件里的**OPTS参数,或者就是一些configuration文件的property名为OPTS的参数,这些文件的位置除了conf就是bin。至于eclipse这边的配合,就是new一个remote debug configuration,写上远程IP和端口:


就ok了。记得要先启动被调试的JVM,然后再去连接调试。因为我们的suspend参数多数是y。(自己看着办了)


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值