java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/mapreduce/MultiTableInputFormat
При выполнении теста для задания mapReduce на мини-кластере Hadoop я получаю сообщение об ошибке:
java.lang.NoClassDefFoundError: org / apache / hadoop / hbase / mapreduce / MultiTableInputFormat в org.apache.crunch.io.hbase.HBaseSourceTarget.(HBaseSourceTarget.java:98) в org.apache.cbase.hbt.(HBaseSourceTarget.java:72)
Это отлично работало на кластере, но во время тестирования эта ошибка выдается.
Вот мои тестовые зависимости, которые я использую специально для тестирования на локальном мини-кластере:
<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 ответ
Вам не хватает этой зависимости.
<dependency>
<groupId>org.apache.crunch</groupId>
<artifactId>crunch-hbase</artifactId>
<version>0.15.0</version>
</dependency>