Hadoop启动Mapred任务,报错Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster

错误信息

启动Hadoop任务,报错Error: Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster 的解决方法


Error: Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster

Please check whether your <HADOOP_HOME>/etc/hadoop/mapred-site.xml contains the below configuration:

<property>

<name>yarn.app.mapreduce.am.env</name>

<value>HADOOP_MAPRED_HOME=${full path of your hadoop distribution directory}</value>

</property>

<property>

<name>mapreduce.map.env</name>

<value>HADOOP_MAPRED_HOME=${full path of your hadoop distribution directory}</value>

</property>

<property>

<name>mapreduce.reduce.env</name>

<value>HADOOP_MAPRED_HOME=${full path of your hadoop distribution directory}</value>

</property>

解决步骤

  1. 编辑${HADOOP_HOME}/etc/hadoop/mapred-site.xml ,添加如下项
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
    <property>
    <name>yarn.app.mapreduce.am.env</name>
    <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value>
  </property>

  <property>
    <name>mapreduce.map.env</name>
    <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value>
  </property>

  <property>
    <name>mapreduce.reduce.env</name>
    <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value>
  </property>
  <property>
    <name>mapreduce.application.classpath</name>
    <value></value>
  </property>

把其中的$HADOOP_MAPRED_HOME换成自己的hadoop安装路径。

  1. 执行如下命令:
export HADOOP_CLASSPATH=$(hadoop classpath)

echo $HADOOP_CLASSPATH

把输出结果贴到classpath里面。

  1. 同步mapred-site.xml到从节点上(如果有的话)
# 拷贝到 worker1
scp /usr/local/hadoop/etc/hadoop/mapred-site.xml hadoop@worker1:/usr/local/hadoop/etc/hadoop/

# 拷贝到 worker2
scp /usr/local/hadoop/etc/hadoop/mapred-site.xml hadoop@worker2:/usr/local/hadoop/etc/hadoop/

  1. 重启yarn

stop-yarn.sh
start-yarn.sh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值