对Hadoop执行分布式计算作业的理解

这个问题是在Eclipse中调试Nutch时产生的,在机器A的Eclipse中执行Crawl时报出ClassNotFound的错误,而在同样配置的机器B中完全正常,这两台机器环境的唯一区别是机器A中Hadoop是独立,而机器B中的Hadoop是Nutch带的

 

问题原因分析:

Hadoop执行作业时需要提交可执行文件,即jar文件,否则会抛出no job jar file set的警告。

机器A中未包含jar文件,使得Hadoop的jobclient基于其本地的classpath搜索可用的class文件,但未找到,则抛出ClassNotFound的错误

机器B中由于使用了Nutch中的Hadoop,因此jobclient能够在其目录下找到同名的class文件。

你可能感兴趣的:(对Hadoop执行分布式计算作业的理解)