Nutch2.2.1在MyEclipse中的安装(window7环境)

https://svn.apache.org/repos/asf/nutch/branches/branch-2.2.1/网址里面可以找到Nutch2.2.1版本的资源文件。

1. 在MyEclipse中安装nutch2.2.1的前提
     (1)系统中已经安装并且配置好java环境(jdk最好是1.7.0.51版本的)
     (2)MyEclipse中已安装插件:Svneclipse、ivyDE
 
2. 本机环境
     (1)win7-32系统
     (2)jdk1.7.0.51
 
3. 将nutch2.2.1通过MyEclipse检出到本地
     (1)通过MyEclipse的svn插件将nutch关联到本地
    
 
   (2)点击资源库,检出项目
   
  (3)选择作为新项目检出
   
    (4)选择以java Project项目方式检出
    
    (5)选择新版的JDK,并命名工程为nutch2.2.1
     
    (6)检出项目
    
    (7)至此项目就同步到本地了(但是会报错,没有关系,下面就进行项目的配置)
    
 
  4. 配置项目
  (1)右键项目——》Build Path——》Configure Build Path... ——》Source :
     1. 删除nutch-2.2.1/src文件
     
    2.Add Folder,添加项目中的src/bin,src/java,src/test,src/testresources以及src/plugin文件下面除了1. feed 2. parse-swf 3. parse-zip 4.parse-ext
       文件下的所有的java和test文件夹(因 为:http://wiki.apache.org/nutch/Nutch2Plugins
     
    3.Build Path——》Configure Build Path...——》Libraries  Add Class Folder(添加项目中的conf文件夹 并置顶)
     
   4. 项目中,找到build.xml,右键——》Run As——》Ant Build , 等待完成
  
  5.引入build文件夹下所有的jar包,导入之后还缺少4个jar包,自行下载jar包,若下载不了,请联系我。
  
  6.引入这四个jar包以后项目将没有错误了,若还有错误,尝试请查看你的环境是否正确,比如JDK的版本。
  
  7.刷新项目,修改conf/nutch-default.xml文件 找到plugin.folders项修改其值
  
  8.设置存储方式,找到conf/gora.properties文件,注视里面的全部选项(里面的配置很多,而且可以连接数据库),现在以AvroStore为例

  gora.avrostore.codec.type=BINARY||JSON
  gora.avrostore.output.path=file:///tmp/gora.avrostore.test.output

  图如下

  
  9.找到conf/nutch-site.xml文件,添加如下内容

    <configuration>
      <property>
        <name>http.agent.name</name>
        <value>My Nutch Spider</value>
      </property>

      <property>
        <name>storage.data.store.class</name>
        <value>org.apache.gora.avro.store.DataFileAvroStore</value>
      </property>
    </configuration>

  10.在项目中添加urls文件夹,在文件夹中添加seed.txt文件,在文件中输入想要抓取的链接即可,然后配置参数(主类:org.apache.nutch.crawl.InjectorJob)
  E:/apache-nutch-1.8/urls/url.txt
  -Dhadoop.log.dir=logs -Dhadoop.log.file=hadoop.log
  图如下
  
 11.点击run,运行后,hadoop会产生解文件夹权限访问问题
    决方法是,修改/hadoop-1.0.2/src/core/org/apache/hadoop/fs/FileUtil.java里面的checkReturnValue,注释掉即可。
   当然最简单的办法是在网上找一个修改过的包,替换一下FileUtil.class。(不能解决请联系我吧)
 
 12.替换以后,再点击run,则成功了
  
5 总结
  祝你好运。如若不清楚,可邮件联系我。
   
原文地址:https://www.cnblogs.com/divenswu/p/3886569.html