下面,我们就可以在eclipse上进行Map-Reduce开发了,当把代码写完,右键选择run on hadoop,咦,怎么没反应?我又重试了好几次,确定没反应,不是我手抖或者看错了。 这是怎么回事呢?这个问题当时确实卡了我很久,插件是官方提供的,配置也正确了,都能连上HDFS了,那怎么不能运行M-R代码呢? 后来在网上搜了好久的资料,发现不少人都遇到过这个问题,给出的解释是:0.20.2版本官方提供的插件已过时,需要下载正确的插件,晕!(我不知道当初公司为什么要选择0.20.2这么一个过度版本,想自定义一个OutputFormat都很难!) 该插件地址:https://issues.apache.org/jira/secure/attachment/12460491/hadoop-eclipse-plugin-0.20.3-SNAPSHOT.jar 把插件下载下来后,重命名为hadoop-0.20.2-eclipse-plugin,重启eclipse,再次选择run on hadoop,终于有反应了,弹出对话框:
选择之前的配置项,next。。。 本以为大功告成,没想到,噩梦还在继续。。。
看异常提示,貌似是命令找不到,去网上搜索,原来是在windows下无法运行linux命令,需要在windows安装cygwin来模拟linux环境。 遂下载、安装、配置path,再次run on hadoop,当看到M-R作业提交运行在控制台打印出 map 100% reduce 100%信息时,我几乎留下了感动的眼泪!