飞道的博客

Apache Solr 4.9上配置IKAnalyzer中文分词插件

373人阅读  评论(0)

solr的介绍及其安装

一句话概括:solr是基于Lucene的Java搜索引擎服务器,其部署要搭配tomcat

Solr的介绍及其安装详见:什么是Solr,它能为我们解决什么问题,怎么用?

  • Apache Solr 4.9.0下载:https://pan.baidu.com/s/1Ld1dzt2FQ_xAyom8Yd8ppQ
    提取码:tnn2

下载IKAnalyzer

下载IKAnalyzer可以到这个地址 https://code.google.com/p/ik-analyzer/,但很不幸,这个地址被墙了,可以到我的百度云把IKAnalyzer下载下来

  • 点击下载:https://pan.baidu.com/s/1gWjxluDUxypTgV_D6qzYPw
    提取码:il28

安装并配置IKAnalyzer

将下载下来的IK Analyzer压缩包解压,并把解压后的文件夹中的IKAnalyzer2012FF_u1.jar复制到E:\tomcat7\tomcat-7\webapps\solr\WEB-INF\lib目录下

在E:\tomcat7\tomcat-7\webapps\solr\WEB-INF目录下创建classes文件夹,并把IK Analyzer 压缩包解压后的文件夹中的IKAnalyzer.cfg.xml和stopword.dic复制到classes目录中

配置F:\solrhome\collection1\conf目录中的schema.xml配置文件,加入如下配置项

<!-- IKAnalyzer 中文分词 -->       
 <fieldType name="text_ik" class="solr.TextField">        
        <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer">   		    </analyzer>     
 </fieldType>

启动tomcat服务器,在浏览器输入网址:http://localhost:8080/solr/#/collection1/analysis

如果配置正常,会显示如下界面

在Field Value (Index)下面的文本框中输入中文:能力越大,责任越大

然后在Analyse Fieldname / FieldType:右边的下拉框中选择“text_ik”(text_ik对应刚刚schema.xml设置的那个表示分词器的字段)。点击“Analyse Values”则会显示分词的结果

截止到现在,我们的Apache Solr 4.9上配置IKAnalyzer中文分词插件的部署是成功了的

记两个bug

在安装配置solr后启动solr时,报出错误

WARN  org.apache.solr.handler.admin.SystemInfoHandler  – Error getting JMX properties
java.lang.UnsupportedOperationException: Boot class path mechanism is not supported

在看到JMX报错的时候我估摸着会不会是Java版本的问题,于是我检查了本机的Java版本,发现当前使用的Java版本是Java12,我猜可能是Java版本过高,solr4.9.0还不支持,刚好我电脑上也装了Java8,于是我把Java版本切换到Java8,再启动solr,启动正常了

最初在往solr配置IKAnalyzer分词器之后,启动solr执行中文分词功能的时候,报出错误

 java.lang.AbstractMethodError

非常常见的solr版本和IKAnalyzer版本不匹配的问题,更换与安装的solr相对应的IKAnalyzer版本即可,我上面链接指向的solr和IKAnalyzer版本是匹配了的


转载:https://blog.csdn.net/atuo200/article/details/106151776
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场