nutch1.2中加入中文分词以及搜索错误解决

在nutch当中加入中文分词。这里我使用的IK_Analyzer
1、下载IKAnalyzer3.2.5Stable.jar。
2、需要修改org.apache.nutch.analysis包下面的NutchDocumentAnalyzer.java的tokenStream方法
  2.1 : 加入属性变量 -- private static Analyzer IK_ANALYZER;
  2.2 : NutchDocumentAnalyzer 构造方法中 加入 :
         IK_ANALYZER = new IKAnalyzer();
  2.3 : 在 tokenStream 方法中加入
         Analyzer analyzer;
     analyzer = IK_ANALYZER;
         //以下几行代码必须加上
     TokenStream tokenStream = analyzer.tokenStream(fieldName, reader);
     tokenStream.addAttribute(TypeAttribute.class);
     tokenStream.addAttribute(FlagsAttribute.class);
     tokenStream.addAttribute(PayloadAttribute.class);
     tokenStream.addAttribute(PositionIncrementAttribute.class);
         //如果不加,在search的时候报错,错误如下:
  Exception in thread "main" java.lang.IllegalArgumentException: This AttributeSource does not have the attribute     'org.apache.lucene.analysis.tokenattributes.TypeAttribute'.
  2.4 : 在这个包下找到org.apache.nutch.analysis.NutchAnalysis.jj
         将<SIGRAM: <CJK> >替换为 <SIGRAM: (<CJK>)+ >
         然后使用javacc工具编译,可以得到7个**.java文件,把这些文件覆盖这个包下面文件。
  2.5 : 编译src/build.xml
         加入 <include name="IKAnalyzer3.2.5Stable.jar"/>
3、根目录下 ant.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值