hadoop学习(七)---------eclipse调试FsShell

上一节介绍了eclipse远程调试hadoop,这一节再以FsShell为例,巩固一下远程调试的知识。


FsShell是hadoop提供的一个与本地文件系统,HDFS,HTFS,S3等文件系统交互的工具,使用格式如下:

bin/hadoop fs <args>



1.首先,修改bin/hadoop文件,使FsShell启动的时候支持远程调试,并等待eclipse调试器的连接

*)
    # the core commands
    if [ "$COMMAND" = "fs" ] ; then
      CLASS=org.apache.hadoop.fs.FsShell
    HADOOP_OPTS="$HADOOP_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8104"


2.eclipse增加调试FsShell

hadoop学习(七)---------eclipse调试FsShell_第1张图片



3.设置断点 org.apache.hadoop.fs.FsShell.java的main函数设置断点:

hadoop学习(七)---------eclipse调试FsShell_第2张图片


4.运行fs命令

hadoop fs -ls / (简单的执行显示根目录的命令)


5.执行debug后,看到断在了main函数334行处,看到入参为"ls" "/".

hadoop学习(七)---------eclipse调试FsShell_第3张图片


同样的方式,可以调试其它模块。

你可能感兴趣的:(eclipse,源码,hadoop,hadoop,spark,大数据,调试)