desehawk 发表于 2015-3-2 14:25:13

搭建sqoop的eclipse调试环境

问题导读

1.如何导入到sqoop到eclipse中?
2.如何进行java进程调试?


static/image/hrline/4.gif



a、导入到sqoop到eclipse中:下载sqoop 1.3的tar包解压,我们打开build.xml,发现<target name="eclipse" description="Generate Eclipse project">的target,我们只需要执行,ant eclipse,就可以ant脚本就可以给我们生成eclipse的工程文件,我们只需要在eclipse中导入即可。
b、调试sqoop:由于sqoop bin文件夹中的脚本,sqoop来启动java进程,java进程是sqoop脚本的子进程,sqoop脚本中配置了的许多环境变量需要传到sqoop程序中,所以直接,在eclipse中main函数执行,不能执行,所以需要远程调试java进程。

c、如何进行java进程调试:打开bin\sqoop,最后一行,发现,

exec ${HADOOP_HOME}/bin/hadoop com.cloudera.sqoop.Sqoop "$@",执行这句话,说明执行的hadoop脚本,要想进行远程调试,我们需要在hadoop脚本中加入,我们调试参数,我是这样加的,在hadoop脚本中加入,

HADOOP_DEBUG="-Xdebug -Xrunjdwp:transport=dt_socket,address=9991,server=y,su    spend=y",然后在后面的脚本中加入这个选项就行,这样就能远程调试了。

例如,我执行./sqoop import --connect jdbc:mysql://localhost/TEST --username root --password root --table STUDENT,功能把student表中的数据导入到hdfs上,加入调试选项后,进程就会停下来,我们只需要eclipse进行远程调试,就像我们本地代码是一样的,可以打断点,可以看变量的值,很方便,具体eclipse 远程调试可以参照,http://www.ibm.com/developerworks/cn/opensource/os-eclipse-javadebug/,即可。接下就可以学习其源码了。




desehawk 发表于 2015-3-2 14:28:58



进一步补充

lf61nol 发表于 2015-3-17 18:11:16

谢谢楼主分享,期盼楼主继续{:soso_e179:}

allenswf 发表于 2015-3-24 06:16:18

为楼主点个赞啊啊啊

humeifang 发表于 2015-12-16 12:27:17

您好,请问直接在linux环境下如何搭建这个环境呢?

humeifang 发表于 2015-12-17 10:00:30

您好,请问:a、导入到sqoop到eclipse中:下载sqoop 1.3的tar包解压,我们打开build.xml,发现<target name="eclipse" description="Generate Eclipse project">的target,我们只需要执行,ant eclipse,就可以ant脚本就可以给我们生成eclipse的工程文件,我们只需要在eclipse中导入即可。 ///ant eclipse是什么意思?不是ant package吗?

孤独的战神 发表于 2017-3-23 14:04:34

不给力
页: [1]
查看完整版本: 搭建sqoop的eclipse调试环境