HBase: Error: Found interface org.apache.hadoop.mapreduce.Counter, but class was expected

出现这种问题一般来说是Hadoop1.x和2.x冲突了。

之前一直使用

1
2
3
4
5
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>1.2.1</version>
</dependency>

这个依赖包, hadoop-core 1.2.1是最新的,但是还是1.x的client。

Counter是class

解决这个问题需要把这个依赖包换成:

1
2
3
4
5
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-mapreduce-client-core</artifactId>
<version>2.7.1</version>
</dependency>

Ok,问题解决.