码迷,mamicode.com
首页 > 其他好文 > 详细

Nutch 2.x + Hadoop 2.5.2 + Hbase 0.94.26

时间:2015-01-16 20:47:15      阅读:1766      评论:0      收藏:0      [点我收藏+]

标签:

一开始运行Nutch 2.x 总是报下面这个错误:

java.lang.IncompatibleClassChangeError: Found interface org.apache.hadoop.mapreduce.Counter, but class was expected

这个问题足足折腾了2天,查了无数资料,始终不能解决问题,虽然问题定位在Nutch 编译的时候使用了Hadoop 1.x,然后运行的时候是在Hadoop 2.x上,但是始终找不到到底什么时候依赖了hadoop-core-1.0.1,最后仔细研究了一下Nutch使用的编译工具,运行ant report把整个项目的依赖关系打印出来,发现原来是gora-core这个包,于是修改ivy.xml,添加了

<exclude org="org.apache.hadoop" name="hadoop-core"/>

这么一句话,然后再编译,nutch就可以运行了!明天试试Nutch 2.x+Hadoop 2.6+Hbase 0.98.9

还有几个要点记录一下:

1、nutch-site.xml需要添加

<property>

<name>io.serializations</name>

<value>org.apache.hadoop.io.serializer.WritableSerialization</value>

<description>A list of serialization classes that can be used for

obtaining serializers and deserializers.</description>

</property>

2、编译hbase时需要修改pom.xml,将protobuf的版本从2.4.0修改为2.5.0

3、将依赖nadoop-core修改为hadoop-common和hadoop-mapreduce-client-core

Nutch 2.x + Hadoop 2.5.2 + Hbase 0.94.26

标签:

原文地址:http://www.cnblogs.com/mactech/p/4229708.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!