首先遇到的问题按照这篇文章http://www.360doc.com/content/15/0202/09/20466010_445634294.shtml解决了部分问题,而且在bin目录中已经添加了网友们提供的Hadoop-2.6.0 bin目录下的hadoop.dll ,libwinutils.lib,和winutils.exe。
但“调试时控制台没有日志显示,实际上又可以输出正确结果”的问题依旧没有得到解决
log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info
最后解决办法是: 把 log4.properties 复制到项目中bin目录下即可,注意复制后的权限。eclipse/workspace/WordCount/bin/ 也就是你的eclipse的workspace下面项目的bin目录下,问题得到解决。
至于会出现该问题的原因我比较同意网友的这个说法: “我个人的理解是,eclipse中的程序是在本机运行的,而不是发送到服务器上运行再返回结果,所以就没有实际的map/reduce日志。在本机运行正确后,再打成jar包,放到hadoop服务器中运行就OK了。本机的作用是调试。”(出处:http://f.dataguru.cn/thread-250980-2-1.html)