首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hadoop MRUnit异常与Hadoop2

Hadoop MRUnit异常与Hadoop2
EN

Stack Overflow用户
提问于 2013-10-18 18:22:42
回答 1查看 837关注 0票数 0

我试图使用Hadoop2对MRUnit进行测试,但得到了以下错误:

代码语言:javascript
复制
java.lang.IncompatibleClassChangeError: Found class org.apache.hadoop.mapreduce.TaskInputOutputContext, but interface was expected

我看到了关于堆栈溢出的其他几个答案,但大多数答案似乎都与在pom.xml文件中为Hadoop1和Hadoop2包含多个配置有关。

有谁能洞察到是什么原因造成了这一切?

我的pom.xml文件如下:

代码语言:javascript
复制
 <dependencies>
<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <scope>test</scope>
</dependency>
<dependency>
    <groupId>com.github.davidmoten</groupId>
    <artifactId>geo</artifactId>
    <version>0.6.5</version>
</dependency>
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>activation</artifactId>
    <version>1.0.2</version>
</dependency>
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.2.11</version>
</dependency>
<dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-core</artifactId>
    </dependency>   
<dependency>
    <groupId>org.apache.mrunit</groupId>
    <artifactId>mrunit</artifactId>
    <version>1.0.0</version>
    <classifier>hadoop2</classifier>
    <scope>test</scope>
</dependency>   

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-18 23:02:03

这意味着您实际上并不是在Hadoop 2上运行。TaskInputOutputContext是一个接口为2.x,但它说它认为它是一个类。

事实上,您的pom.xml证实了这一点。hadoop-core是一个1.x工件。您将在2.x中使用类似于hadoop-common的东西。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19456527

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档