IKAnalyzer分词器和Solr整合,在整合过程中,我发现Ik版本和Solr版本不兼容的问题,搞了半天,最怕的就是尼玛版本问题,导致莫名其妙的问题,菊花疼啊

默认分词,发现字符分割有问题,是俺字符分割,所以需要使用中文分词器

Solr之IKAnalyzer中文分词器-yellowcong_analyzer

配置好IK后的分词效果

Solr之IKAnalyzer中文分词器-yellowcong_solr_02

下载地址

IKAnalyzer2012_u6和solr-4.10.3 不兼容,需呀换成IKAnalyzer2012FF_u1.jar

#下载分词器(不知道为啥,就是配置了有错误,Solr是4.10.3 版本, 这个版本不兼容)
wget http://yellowcong.qiniudn.com/IKAnalyzer2012_u6.zip

#u1版本
http://yellowcong.qiniudn.com/wltea-IK-Analyzer-2012FF-u1.zip

Solr和IKAnalyzer整合

整合的思路是1、拷贝jar到WEB-INF;2、创建classes文件夹目录;3、复制dic和IKAnalyzer.cfg.xml;4、修改schema.xml配置文件

#解压
unzip wltea-IK-Analyzer-2012FF-u1.zip -d ikanalyzer

#拷贝jar包到WEB-INF/lib目录
cp IKAnalyzer2012FF_u1.jar  /usr/local/solr/apache-tomcat-7.0.62/webapps/solr/WEB-INF/lib/

#创建WEB-INF/classes
mkdir /usr/local/solr/apache-tomcat-7.0.62/webapps/solr/WEB-INF/classes

#拷贝dic 到class目录 ,只有stopword(我们还可以添加一些自己的字典到里面),别看只有这么一个字典,是由于它里面有内置字典
cp stopword.dic  /usr/local/solr/apache-tomcat-7.0.62/webapps/solr/WEB-INF/classes/
cp IKAnalyzer.cfg.xml /usr/local/solr/apache-tomcat-7.0.62/webapps/solr/WEB-INF/classes/


#修改solrhome 的schema.xml
vim /usr/local/solr/solr-4.10.3/example/solr/collection1/conf/schema.xml

#添加到配置中

<!-- 我添加的IK分词 -->
<fieldType name="text_ik" class="solr.TextField">   
        <!-- isMaxWordLength:true使用最大长度分词 false使用最细粒度分词 -->
        <analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>   
        <analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>   
   </fieldType>

IKAnalyzer2012 里面内置的字典

Solr之IKAnalyzer中文分词器-yellowcong_tomcat_03

添加的分词器

Solr之IKAnalyzer中文分词器-yellowcong_solr_04

配置成功

可以看到text_ik这个分词器

Solr之IKAnalyzer中文分词器-yellowcong_solr_05

问题合集

配置不上

No cores available

Solr之IKAnalyzer中文分词器-yellowcong_tomcat_06

去掉了ik的配置就好了,重启tomcat就好了,淡腾啊,后来发现是IK和Solr版本不兼容的问题,请注意

Solr之IKAnalyzer中文分词器-yellowcong_tomcat_07

创建不了Core

这个也是IK的版本问题导致的。。。。

Solr之IKAnalyzer中文分词器-yellowcong_其他_08