启动hadoop 2.2.0 minicluster时出错:java.lang.NoClassDefFoundError:org / apache / hadoop / yarn / server / MiniYARNCluster

时间:2013-11-27 17:58:28

标签: hadoop yarn

我在MacOS开发环境中使用Apache Hadoop 2.2.0。当尝试运行hadoop minicluster时,如apache docs中所述:

hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.2.0-tests.jar  minicluster

我收到了错误

  

java.lang.NoClassDefFoundError:org / apache / hadoop / yarn / server / MiniYARNCluster       在org.apache.hadoop.mapreduce.MiniHadoopClusterManager.start(MiniHadoopClusterManager.java:170)       在org.apache.hadoop.mapreduce.MiniHadoopClusterManager.run(MiniHadoopClusterManager.java:129)       在   。 。 。 。 。   。 。

任何想法如何解决这个问题?

2 个答案:

答案 0 :(得分:8)

看起来我找到了解决方案:默认情况下,包含MiniYARNCluster的jar文件不是Hadoop类路径的一部分,必须将其显式添加到HADOOP_CLASSPATH中。下面的代码段运行良好:

export HADOOP_CLASSPATH=./share/hadoop/yarn/test/hadoop-yarn-server-tests-2.2.0-tests.jar
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.2.0-tests.jar  minicluster

答案 1 :(得分:2)

我知道这是一个老帖子,但我最近需要解决这个问题,并且无法找到完整的MR2和YARN测试解决方案,所以我想分享我发现的内容

http://www.lopakalogic.com/articles/hadoop-articles/hadoop-testing-with-minicluster/

希望它有助于某人