2012-09-11 3 views
2

nutch를 실행하려고하면 다음 오류가 표시됩니다. hbase-0.94.0이 설치되어 실행 중이며 hadoop도 문제없이 실행 중입니다. $ {NUTCH_HOME}/runtime/local/lib에 hbase-0.94.0.jar가 있습니다. 나는 다음과 같은 오류가 발생합니다, 그것은 종속성에 문제가있는 것 같지만 꽤 붙어 있습니다. 그것은 HBase를-0.90.5와 함께 작동 감사nutch hbase로 주입 NoSuchMethodError

./nutch inject /tmp/seed.txt 
InjectorJob: starting 
InjectorJob: urlDir: /tmp/seed.txt 
2012-09-11 22:02:14.097 java[7636:1903] Unable to load realm info from SCDynamicStore 
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.hbase.HColumnDescriptor.setMaxVersions(I)V 
    at org.apache.gora.hbase.store.HBaseMapping$HBaseMappingBuilder.addFamilyProps(HBaseMapping.java:114) 
    at org.apache.gora.hbase.store.HBaseStore.readMapping(HBaseStore.java:545) 
    at org.apache.gora.hbase.store.HBaseStore.initialize(HBaseStore.java:113) 
    at org.apache.gora.store.DataStoreFactory.initializeDataStore(DataStoreFactory.java:102) 
    at org.apache.gora.store.DataStoreFactory.createDataStore(DataStoreFactory.java:161) 
    at org.apache.gora.store.DataStoreFactory.createDataStore(DataStoreFactory.java:135) 
    at org.apache.nutch.storage.StorageUtils.createWebStore(StorageUtils.java:69) 
    at org.apache.nutch.crawl.InjectorJob.run(InjectorJob.java:243) 
    at org.apache.nutch.crawl.InjectorJob.inject(InjectorJob.java:268) 
    at org.apache.nutch.crawl.InjectorJob.run(InjectorJob.java:288) 
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65) 
    at org.apache.nutch.crawl.InjectorJob.main(InjectorJob.java:298) 

답변

1

나는 문제 또는 다른 구성 nutch 2 HBase를-0.94를 사용하는 경우 추가 할 수있을 것 같다. *

+0

현재 Gora는 hbase-0.90.4 (0.90.5)에서 작동합니다. 곧 업그레이드 할 예정입니다 (https://issues.apache.org/jira/browse/GORA-201). –

0

내가 nutch2.0를 실행하면 0.94.1 명령으로, 그것은 nosuchmethod이고, Eclipse에서는 java.lang.NoClassDefFoundError : org/apache/hadoop/hbase/HBaseConfiguration입니다. althogh jar 또는 config 클래스 경로를 복사합니다. 그것은 작동하지 않습니다. 이제 90.5로 변경됩니다. 제대로 작동하기를 바랍니다.

1

요즘 일반적인 호환성 문제입니다. Apache Gora가 Apache HBase 0.98.x 이상을 채택 할 때까지 기다려야합니다. 한편 아래에 설명 된 해결 방법이 있습니다.

Apache Nutch 2.2.1은 이전 Apache HBase 0.90.x 만 지원하는 Apache Gora 0.3을 사용합니다. ,

  1. 복제 구성하고 Nutch from the official Git branch 2.x 신선한를 구축 : 는 당신이이 순간에 Nutch 전 2.2.x를 사용하십시오.

  2. 클론 및 빌드 my version of Apache HBase 0.94.24-hadoop-2.5.0.

은 또한 어떤 하둡 릴리스에 대한 자신 만의 버전을 빌드하는 방법을 알아 내기 위해 compatibility documentation for Apache HBase를 읽을 수 있습니다.

완전히 알려면 issue with Apache Gora 0.3을 살펴보십시오.

내 테스트 작업 스택은 다음과 같습니다

  • 너치 고라 0.4 사용 2.x는 자식 지점에서;
  • 아파치 Hbase 0.94.24-hadoop-2.5.0;
  • Apache Hadoop 2.5.0.