ik-analyzer-solr/README.md

2.4 KiB
Raw Blame History

ik-analyzer-solr7

ik-analyzer for solr7.x

适配最新版solr7并添加动态加载字典表功能 在不需要重启solr服务的情况下加载新增的字典。


使用说明:


  • 1. 将jar包放入solr服务的jetty或tomcat的webapp/WEB-INF/lib/目录下;

  • 2. 将resources目录下的5个配置文件放入solr服务的jetty或tomcat的webapp/WEB-INF/classes/目录下;

    ①IKAnalyzer.cfg.xml

    ②ext.dic

    ③stopword.dic

    ④ik.conf

    ⑤dynamicdic.txt

  • 3. 配置solr的managed-schema添加ik分词器示例如下

    <!-- ik分词器 --> <fieldType name="text_ik" class="solr.TextField"> <analyzer type="index"> <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" isMaxWordLength="false" useSmart="false" conf="ik.conf"/> <filter class="solr.LowerCaseFilterFactory"/> </analyzer> <analyzer type="query"> <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" isMaxWordLength="true" useSmart="true" conf="ik.conf"/> <filter class="solr.LowerCaseFilterFactory"/> </analyzer> </fieldType>
  • 4. 启动solr服务测试分词

  • 5. ik.conf文件说明

    files=dynamicdic.txt

    files为动态字典列表可以设置多个字典表用逗号进行分隔默认动态字典表为dynamicdic.txt


    lastupdate=0

    lastupdate默认值为0每次对动态字典表修改后请+1不然不会将字典表中新的词语添加到内存中lastupdate采用的是int类型不支持时间戳如果使用时间戳的朋友可以把源码中的int改成long即可

  • 5-dynamicdic.txt 为动态字典,在此文件配置的词语不需重启服务即可加载进内存中;


有问题可以联系作者邮箱magese@live.cn

欢迎大家一起交流~