【问题标题】:Apache Nutch Hadoop IntegrationApache Nutch Hadoop 集成
【发布时间】:2019-03-13 08:07:57
【问题描述】:

我根据https://wiki.apache.org/nutch/NutchHadoopTutorial提供的链接配置了 apache-nutch-1.15 和 hadoop 在部署模式下运行

但是当我尝试运行以下命令时

hadoop jar apache-nutch-${version}.job org.apache.nutch.crawl.Crawl urls -dir crawl -depth 3 -topN 5

我遇到了以下异常

Exception in thread "main" java.lang.ClassNotFoundException: org.apache.nutch.crawl.Crawl
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:348)
    at org.apache.hadoop.util.RunJar.run(RunJar.java:214)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:136)

类 org.apache.nutch.crawl.Crawl 在 nutch v1.15 中不存在,但在 nutch v1.17 中存在。

请帮我解决这个问题

【问题讨论】:

    标签: java apache nutch


    【解决方案1】:

    apache nutch 爬取到 hdfs 的文档自 2014 年以来没有更新。新版本的 apache nutch 没有任何名为 org.apache.nutch.crawl.Crawl 的类。

    要运行 apache nutch,请遵循与爬取到本地文件系统 (https://wiki.apache.org/nutch/NutchTutorial) 相关的文档。在链接中选择“选项 2:从源代码分发中设置 Nutch”,然后您将在运行时目录中有一个部署文件夹(部署模式用于将数据转储到 hadoop)

    转到部署文件夹并通过将所有本地路径替换为 hdfs 路径来执行上面链接中提到的本地模式相同的命令

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多