如何远程调试Hadoop代码
来源:互联网 发布:方便面在美国监狱知乎 编辑:程序博客网 时间:2024/05/16 00:40
转:http://blog.csdn.net/nexus/article/details/6552098
通常情况下,我们只是通过已经编译好的Hadoop jar包来运行Hadoop。如果我们更改了Hadoop的源码,希望对更改的代码进行远程调试,可以通过下面的步骤来进行:
1. 下载从Apache社区或者Cloudera网站上下载Hadoop的压缩包
2. 在eclipse中创建一个java工程,并将该压缩包导入其中,建议在linux开发环境下完成
3. 对Hadoop代码更改后,在linux命令行下运行: "ant jar",重新生成新的jar包
4. 将更改后的Hadoop部署到远程的linux server上,假设为一个name node,两个data node的场景,并且要调试name node(IP是10.10.10.2)
5. 在name node的Hadoop bin目录下运行: "cp hadoop hadoop-debug",复制一个新的脚本
6. 在hadoop-debug脚本中的最后一行进行如下改动:
- #exec "$JAVA" $JAVA_HEAP_MAX $HADOOP_OPTS -classpath "$CLASSPATH" $CLASS "$@"
- exec "$JAVA" -Xdebug -Xrunjdwp:transport=dt_socket,address=9090,server=y,suspend=y $JAVA_HEAP_MAX $HADOOP_OPTS -classpath "$CLASSPATH" $CLASS "$@"
7. 运行: "hadoop-debug namenode -format",这个时候命令会挂起,等待调试器连接9090端口,如:
- #./hadoop-debug namenode -format
- Listening for transport dt_socket at address: 9090
8. 回到开发端,在eclipse中右键选择NameNode.java->Debug As->Debug Configuration,进行如下配置:
9. 点击Apply,然后Debug,就可以连接到name node上进行调试了。远程调试和本地调试区别不大,同样可以设置断点等操作。
- 如何远程调试Hadoop代码
- 如何远程调试Hadoop代码
- 如何远程调试Hadoop代码
- eclipse 远程调试hadoop代码
- 如何用户vs 远程调试代码
- hadoop eclipse 权威指南天气代码远程调试
- hadoop远程调试
- 远程调试Hadoop
- hadoop远程调试
- hadoop 远程调试
- 远程调试Hadoop
- 远程调试hadoop
- Hadoop远程调试
- hadoop远程调试
- hadoop远程调试
- hadoop远程调试方法
- hadoop远程调试
- eclipse hadoop远程调试
- 静态库和动态库
- poj 3659 Cell Phone Network 树型DP也是树的最小支配集
- 沉默独白
- ASP.NET 高级编程基础第八篇—Request对象和虚拟路径
- getopt和getopt_long系统调用解析命令行参详解
- 如何远程调试Hadoop代码
- 黄金分割二分性能分析
- java从properties文件中读取和写入属性
- ASP.NET 高级编程基础第九篇—Response和Server对象
- simpletest 在写测试文件的过程中遇到的一些bug的fix
- GridView 合并列、行类
- opencv深入学习(4)—opencv2Mat各个元素的方位方法
- HD1076 不是所有闰年+4都是闰年
- CentOS与RHEL的区别