最近遇到nutch导入eclipse后产生到一些问题

本文详细介绍了Nutch的单机执行和分布式执行的完整流程,并指出了一个常见问题及其解决方案,即在分布式执行时,Nutch导入Eclipse后重新ant项目执行后未向solr插入数据的问题。解决办法是删除/nutch/build/classes/org目录并重新ant编译。

首先说一下安装nutch到步骤。

1.下载apache-nutch-1.6-src.tar.gz

2.解压到 nutch目录

3.修改nutch-site.xml、

<property>
<name>http.agent.name</name>
<value>nutch1.6</value>
</property>

<property>
  <name>http.robots.agents</name>
  <value>nutch1.6,*</value>
  <description>The agent strings we'll look for in robots.txt files,
  comma-separated, in decreasing order of precedence. You should
  put the value of http.agent.name as the first agent name, and keep the
  default * at the end of the list. E.g.: BlurflDev,Blurfl,*
  </description>
</property>

<property>
  <name>plugin.folders</name>
  <!--  local模式下使用下面的配置
  <value>./src/plugin</value> -->
  <!--  集群模式下,使用下面的配置  -->
     <value>plugins</value>
</property>

4.到nutch目录  ant

5.新建eclipse java项目,指定到之前安装到nutch目录。

6.好里到这里nutch项目就导入好了,一般eclipse中hadoop环境好到话是可以单机执行了(nutch-site.xml 里面的plugin.folders  要改成 <value>./src/plugin</value> )

以上是单机执行到全部过程了,主要遇到问题是在分布式执行中。

分布式执行一般是到nutch目录(nutch-site.xml 里面的plugin.folders  要改成 <value>plugins</value>),重新ant编译(如果有修改到话)。然后执行命令

runtime/deploy/bin/nutch crawl hdfs://192.168.1.200:9000/user/hky/urls -solr http://192.168.1.200:8080/solr/ -dir crawl -depth 2 -topN 3


这里遇到到问题是,nutch第一次导入eclipse后 重新ant项目,执行后发现没有向solr插入数据。找了几天才发现,需要删除之前ant生成的/nutch/build/classes/org目录,然后再ant一次,问题就解决了。

原因:我发现导入到eclipse后/nutch/build/classes/org这个目录会自动更新,自己和eclipse的自动编译有关,估计时导入eclipse自动生成到class文件和ant生成到不太一样。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值