【问题标题】:Error while Integrating Apache Nutch 2.3 with Hbase 0.94.14 and Solr 5.2.1将 Apache Nutch 2.3 与 Hbase 0.94.14 和 Solr 5.2.1 集成时出错
【发布时间】:2016-09-24 07:50:57
【问题描述】:

我正在将 Nutch 与 Hbase 和 Solr 集成。

启动 Hadoop 和 Hbase 服务后,我在 Nutch Home 中运行以下命令

sudo -E bin/crawl urls/seed.txt TestCrawl http://localhost:8983/solr/ 2

我正面临这些错误:

Injecting seed URLs
/usr/local/apache-nutch-2.3.1/runtime/local/bin/nutch inject urls/seed.txt -crawlId TestCrawl
InjectorJob: starting at 2016-05-26 15:41:14
InjectorJob: Injecting urlDir: urls/seed.txt
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/HBaseConfiguration
    at org.apache.gora.hbase.store.HBaseStore.initialize(HBaseStore.java:114)
    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:78)
    at org.apache.nutch.crawl.InjectorJob.run(InjectorJob.java:218)
    at org.apache.nutch.crawl.InjectorJob.inject(InjectorJob.java:252)
    at org.apache.nutch.crawl.InjectorJob.run(InjectorJob.java:275)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
    at org.apache.nutch.crawl.InjectorJob.main(InjectorJob.java:284)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.HBaseConfiguration
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 10 more
Error running:
  /usr/local/apache-nutch-2.3.1/runtime/local/bin/nutch inject urls/seed.txt -crawlId TestCrawl
Failed with exit value 1.

谁能告诉我它有什么问题?

【问题讨论】:

    标签: java apache hadoop solr


    【解决方案1】:

    这是 Nutch 中的一个错误,它在执行爬网脚本时无法找到传递依赖。

    更好的配置是 nutch-2.3.1 和 hbase-0.98.8-hadoop2

    为了更好的理解参考下面给出的网址

    https://wiki.apache.org/nutch/Nutch2Tutorial

    这是 gora-hbase 0.6.1 中的一个错误

    另外添加缺少的 hbase-common-0.98.8-hadoop2.jar 传递依赖,这是 gora-hbase 0.6.1 中的一个错误

     <dependency org="org.apache.hbase" name="hbase-common" rev="0.98.8-hadoop2" conf="*->default" />
    

    这样我就可以成功爬取了。

    【讨论】:

      猜你喜欢
      • 2015-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多