基于solr4.1 IK分词 同义词等过滤器的配置

德古拉-大猫 发布于 2013/03/08 10:59
阅读 3K+
收藏 0
基于solr4.1的配置方面 由于4.1的版本,
“在Solr4.0发布以后,官方取消了BaseTokenizerFactory接口,而直接使用Lucene Analyzer标准接口。因此IK分词器2012 FF版本也取消了org.wltea.analyzer.solr.IKTokenizerFactory类。”

所以 对于IK的配置

  1. <fieldType name="text" class="solr.TextField">  
  2.  <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>  
  3.  </fieldType> 
我想知道 对于新版本的filter 该如何配置。因为 filter 在之前的版本中是嵌套在 工厂配置中。

我开始以为4.1后可直接写 fieldtype 中,发现不可以,我看solr自身的其他分词配置 都是嵌套写法。但是 如

<analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer">
    <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
    </analyzer>
    <analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer">
    <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
    </analyzer> 

这样写 就会 报错

更改后报 Caused by: org.apache.solr.common.SolrException: Plugin init failure for [schema.xml] fieldType

以下是问题补充:

@德古拉-大猫:已经解决~! (2013/03/11 09:47)
加载中
0
hrdxwandg
hrdxwandg
之前用3.6自定义了个tokenizer,继承了 BaseTokenizerFactory,但是现在没有了,请问你是怎么解决的呢?
0
德古拉-大猫
德古拉-大猫

引用来自“hrdxwandg”的答案

之前用3.6自定义了个tokenizer,继承了 BaseTokenizerFactory,但是现在没有了,请问你是怎么解决的呢?
已经解决了。solr4里把 BaseTokenizerFactory 改名了。改成了 TokenizerFactory 。。狗血吧。。你去IK的 Google code 看那个issuse里
hrdxwandg
hrdxwandg
好长时间没上了。嗯,多谢了~
0
刘云川
刘云川
你说去 IK的 Google code 看那个issuse里 ,可我只看到问题,没看到解决方案啊,https://code.google.com/p/ik-analyzer/issues/list是这个里面吗?哪个是啊
0
德古拉-大猫
德古拉-大猫

引用来自“刘云川”的答案

你说去 IK的 Google code 看那个issuse里 ,可我只看到问题,没看到解决方案啊,https://code.google.com/p/ik-analyzer/issues/list是这个里面吗?哪个是啊

https://code.google.com/p/ik-analyzer/issues/detail?id=104

这个

德古拉-大猫
德古拉-大猫
回复 @刘云川 : 公司不让上QQ。。回家的
刘云川
刘云川
回复 @java_大猫 : 嗯,我已经解决了,你能加我Q不,285973063,一起学习
德古拉-大猫
德古拉-大猫
回复 @刘云川 : nutch 没用 但是你这个应该是 配置分词的时候缺少 了某个field 配置吧
刘云川
刘云川
嗯,我是按着这个来的,我是与nutch集成,可发生了org.apache.solr.common.SolrException:undefined field text的异常,请问怎么解决
返回顶部
顶部