java.lang.NoClassDefFoundError:org / apache / hadoop / hbase / mapreduce / MultiTableInputFormat

时间:2016-12-02 22:17:23

标签: hadoop mapreduce hbase integration-testing apache-crunch

在Hadoop minicluster上运行mapReduce作业测试时,我收到错误:

  

java.lang.NoClassDefFoundError:   org / apache / hadoop / hbase / mapreduce / MultiTableInputFormat at   org.apache.crunch.io.hbase.HBaseSourceTarget。(HBaseSourceTarget.java:98)     在   org.apache.crunch.io.hbase.HBaseSourceTarget。(HBaseSourceTarget.java:72)

这在群集上完全正常,但在测试此错误时会被抛出。

以下是我的测试依赖项,我专门用于在本地minicluster上测试它:

   <dependency>
        <groupId>org.apache.hbase</groupId>
        <artifactId>hbase</artifactId>
        <version>0.94.2-cdh4.2.0</version>
        <type>test-jar</type>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-minicluster</artifactId>
        <version>2.0.0-cdh4.2.0</version>
        <scope>test</scope>
    </dependency>

1 个答案:

答案 0 :(得分:1)

你缺少这种依赖。

<dependency>
    <groupId>org.apache.crunch</groupId>
    <artifactId>crunch-hbase</artifactId>
    <version>0.15.0</version>
</dependency>