前言
这篇建立在上一篇<a href="http://www.jianshu.com/p/4979d6eb4ea7">nutch2.2.1与solr4.5.1的整合</a>之上,nutch编译的时候报错并不可怕,可怕的是运行时的错误,一个错误可能就葬送了你的一天。
nutch2.2.1与hbase1.1.1报的一个错
org.apache.gora.util.GoraException: java.lang.NumberFormatException: For input string:
遇到这种问题我的第一直觉是没有设定utf-8,可是看了一眼core-site.xml,发现设置了,然后怀疑了版本问题(apache的东西的版本问题永远都是个大问题),具体可能就是jar包的不兼容
查看ivy.xml
<dependency org="org.apache.gora" name="gora-hbase" rev="0.3" conf="*->default" />
做第一步尝试提高gora的版本,发现最新的是0.6.1,所以做如下更改
<dependency org="org.apache.gora" name="gora-hbase" rev="0.6.1" conf="*->default" />
可是发现Hbase1.1.1对gora还是太高。
图二进一步的尝试
将runtime/local/lib/hbase-0.90.4.jar
删掉,然后开始报各种classNotFound
,之后就是一个一个的倒jar包,最后发现了一个jar冲突的错
终极尝试的失落感
最后的那个错误是override了一个final方法,所以我想拿到jar包源码做更改再打包,最后发现,臣妾做不到啊,太扯了。
最后更改Hbase版本为0.90.4
everything ok
图四 图五
网友评论