您的位置:首页 > 编程语言 > Java开发

关于在eclipse中调试mapreduce任务的环境搭建和配置过程

2014-09-03 11:11 477 查看
以下两篇帖子给了我很大的帮助,改天正在好好整理一下所有的思路重新整理
第一篇:http://www.tuicool.com/articles/AjUZrq
第二篇:http://www.linuxidc.com/Linux/2014-04/99858.htm
这里我单独说一下设置mapreduce.application.classpath属性的问题,第二篇文章中说这个属性在yarn-site.xml和mapred-site.xml中应该修改为如下:
<property>
<name>mapreduce.application.classpath</name>
<value>
$HADOOP_CONF_DIR,
$HADOOP_COMMON_HOME/share/hadoop/common/*,
$HADOOP_COMMON_HOME/share/hadoop/common/lib/*,
$HADOOP_HDFS_HOME/share/hadoop/hdfs/*,
$HADOOP_HDFS_HOME/share/hadoop/hdfs/lib/*,
$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/*,
$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/lib/*,
$HADOOP_YARN_HOME/share/hadoop/yarn/*,
$HADOOP_YARN_HOME/share/hadoop/yarn/lib/*
</value>
</property>
但是我在hadoop的2.2的版本上做过尝试,即使上述的 $HADOOP_YARN_HOME这些之类的变量都设置过了,但是就连wordcount这种程序也还是依然不能运行,即使以hadoop jar这种方式也不行,钟其原因就是会有有一个这个问题,不管怎么样你都不能避免。就是下述的这个问题:
Error: Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster
目前我发现把mapreduce.application.classpath中的value的值都修改成绝对路径就可以了(哎!因为这么个简单的问题搞了整整一下午,真是郁闷的不得了),如 $HADOOP_YARN_HOME/share/hadoop/yarn/lib/*写成/opt/hadoop2.2.0/share/hadoop/yarn/lib/*(看网上的很多帖子都是写成这种带环境变量的,以为hadoop能替换环境变量,坑爹啊!!!居然没做替换环境变量的功能,无语~~~~),不知道其他兄弟有没好的解决方案,欢迎拍砖
本文出自 “君子务本” 博客,谢绝转载!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: