在利用Nutch自身的ant打包后,如果对整个项目不太清楚结构,往往出现很多奇怪的问题。这里就是遇到了。。。
*打job后,留在该项目中进行测试时,出现:
org.apache.nutch.plugin.PluginRuntimeException: java.lang.ClassNotFoundException: org.apache.nutch.net.urlnormalizer.basic.BasicURLNormalizer
此情况一般是在nutch-site.xml中plugin.folders还是保留在IDE的配置,比如写成绝对路径。
由于bin/nutch配置是conf下的配置优先于job里的(nutch文件是将conf先添加到classpath的,所以优先),所以job中的没有起到作用。
cause?
*异常:
java.lang.NullPointerException
at org.apache.lucene.index.DocInverterPerField.processFields(DocInverterPerField.java:126)
同样也是由plugin.folders配置不当引起的。
由于默认情况下,nutch下的plugin没有分词插件(当然plugin.includes也不会出现该插件名称),所以如果你后来在includes下添加了analysis-zh时(folder还是默认的plugins),当进行中文搜索/索引时就会出现这个异常。开始觉得很奇怪,因为原本在IDE是正常的,但在外面跑的时候就有问题,找了很久,教训很深刻。
从nutch文件分析知道,它会把build/plugins添加到classpath中,再结合PluginManifestParser#getPloginFolder(),如果此目录在classpath中并且它是一个相对目录时,会直接返回它;另外在打job包时,并不会将编译的新plugins目录覆盖原plugins,所以如果使用默认的值便出现此异常。
后来我将它设置为build/plugins便可以正常动作。
当然了,如果在产品环境下,并不存在build目录,同时如果删除plugins目录的话就可以利用job中的了,运行就没问题。
总之,分析问题时应该从流程上着手,找代码查原因。
分享到:
相关推荐
nutch常见问题归总,对初学nutch的一些问题做出的整理
Nutch是一款开源的Web搜索引擎项目,它主要用于抓取和索引网页内容,是大数据和文本挖掘领域中的一个重要工具。...在处理类似问题时,务必持续关注Nutch社区的最新进展,利用开源社区的力量共同推动技术进步。
1. **操作系统**:Nutch可以在Windows XP或Windows 2000+上运行,但需要注意的是,Nutch的原生脚本是为类Unix环境设计的,因此需要一个类似shell的环境。 2. **Java VM**:安装Nutch需要Java开发环境,至少需要Java...
《Nutch 入门教程.pdf》这本书籍或文档应该包含了 Nutch 的基础知识、安装配置、使用示例以及常见问题解答等内容。通过阅读此教程,你可以了解如何搭建 Nutch 爬虫环境,编写自定义插件,以及进行定制化抓取和索引。...
### nutch10配置(解决代理问题) #### 知识点概述 在处理网络爬虫时,遇到代理问题是非常常见的。对于Nutch这样的开源爬虫框架来说,正确配置代理是确保能够顺利抓取互联网资源的关键步骤之一。本文将详细介绍...
因此,利用Eclipse作为开发工具,可以简化Nutch的配置流程,提供一个友好的图形界面来管理项目和代码,同时利用其强大的调试功能,帮助开发者快速定位和解决问题。 ### 二、Eclipse配置Nutch的步骤详解 #### 步骤1...
在 Nutch 进行抓取时,Solr 会实时接收和索引数据。确保 Solr 已经启动并且配置了适合 Nutch 的索引方案。这通常涉及创建一个 Solr 配置集合,与 Nutch 的 `conf/solr-server.xml` 文件中的配置匹配。 总的来说,...
Nutch是Apache软件基金会开发的一款开源的网络爬虫项目,主要用于收集、索引和搜索互联网上的数据。这个“Nutch使用&Nutch;入门教程”将带你深入理解Nutch的基本概念、工作流程以及如何实际操作它来执行网络爬取任务...
通过以上步骤,一般可以解决Nutch在处理网页内容时的乱码问题。在实践中,遇到的具体问题可能有所不同,因此可能需要对上述步骤进行适当的调整。如果提供的压缩包文件“nutch乱码BUG修正”包含了具体的代码和说明,...
值得注意的是,为了使Nutch能够正常运行,用户需要配置一系列的XML配置文件,包括但不限于hadoop-default.xml、hadoop-site.xml、nutch-default.xml、nutch-site.xml,以及 crawl-tool.xml。这些配置文件中存储了...
【Nutch 知识点详解】 Nutch 是一个开源的 Java 搜索引擎,它提供了从爬虫到搜索的全套工具,使用户能够...不过需要注意,由于 Nutch 主要设计在 Linux 环境下,Windows 上可能遇到兼容性问题,需要仔细调试和解决。
资源名称:Nutch相关框架视频教程资源目录:【】Nutch相关框架视频教程1_杨尚川【】Nutch相关框架视频教程2_杨尚川【】Nutch相关框架视频教程3_杨尚川【】Nutch相关框架视频教程4_杨尚川【】Nutch相关框架视频教程5_...
- 运行Nutch的基本命令,如抓取种子URL (`bin/nutch inject`), 分析网页 (`bin/nutch fetch`), 解析内容 (`bin/nutch parse`), 更新数据库 (`bin/nutch updatedb`),生成索引 (`bin/nutch index`). 5. **Nutch 与 ...
- **实践项目**:尝试建立自己的小规模搜索引擎项目,应用Nutch解决实际问题。 5. **参考资料** - 官方文档:Apache Nutch官网提供了详细的使用指南和API文档。 - 社区资源:参与Nutch的邮件列表、论坛讨论,...
在安装和配置 Nutch 开发环境时,可能会遇到各种问题,以下是对这些问题的详细解答。 首先,确保你已经下载了 Nutch 的正确版本。Nutch 的官方网站可能只提供最新的稳定版本,如 1.6 或 2.1。如果需要其他版本,...
1. **种子URL**:启动Nutch时,需要提供一批起始URL(种子URL),Nutch将从这些URL开始抓取。 2. **抓取**:Nutch使用HTTP协议抓取网页,支持多种抓取策略,如深度优先、广度优先等。 3. **解析**:抓取到的网页会被...
4. **查询处理(Query Processing)**:当用户提交查询时,Nutch会解析查询、执行查询计划,并返回最相关的文档。这部分源码涉及到查询解析、评分算法(如TF-IDF)和结果排序。 5. **分布式计算(Distributed ...
在安装 Nutch 0.8 时,与之前的版本相比有一些变化。首先,`crawl` 命令中的 `urls` 参数不再是直接指定文件,而是指定一个目录,例如 `urls/foo`。其次,需要在 `nutch-site.xml` 中设置 `http.agent.name` 属性,...
要使用Nutch插件,开发者需要在`conf/nutch-site.xml`配置文件中添加插件的名称到`plugin.includes`列表中。每个插件都有一个`plugin.xml`文件,用于描述插件信息,以及一个`build.xml`文件,指导Ant构建工具如何...