{ "tokens" : [ { "token" : "sojson", "start_offset" : 0, "end_offset" : 6, "type" : "<ALPHANUM>", "position" : 0 }, { "token" : "在", "start_offset" : 6, "end_offset" : 7, "type" : "<IDEOGRAPHIC>", "position" : 1 }, { "token" : "线", "start_offset" : 7, "end_offset" : 8, "type" : "<IDEOGRAPHIC>", "position" : 2 }, { "token" : "工", "start_offset" : 8, "end_offset" : 9, "type" : "<IDEOGRAPHIC>", "position" : 3 }, { "token" : "具", "start_offset" : 9, "end_offset" : 10, "type" : "<IDEOGRAPHIC>", "position" : 4 } ] }
一、下载 下载地址为: https://github.com/medcl/elasticsearch-analysis-ik,根据es 2.3.3版本到对于版本上下载1.9.3版本git
二、解压。github
把下载的 elasticsearch-analysis-ik.zip解压。json
三、 Maven 打包elasticsearch
进入elasticsearch-analysis-ik-master/ 下,打包。注意:打包后的文件在elasticsearch-analysis-ik-master/target/目录下ide
mvn clean package 4.而后在elasticsearch-2.3.3/plugins下建立目录 ik工具
cd elasticsearch-2.3.3/plugins mkdir ik cd ik 而后将打包后的elasticsearch-analysis-ik-1.9.3.zip 放入当前目录下,而后解压。测试
五、设置(2.0以上能够不设置,我没有设置)。code
在 Elasticsearch 的config下的elasticsearch.yml文件中,添加以下代码。索引
index: analysis: analyzer: ik: alias: [ik_analyzer] type: org.elasticsearch.index.analysis.IkAnalyzerProvider ik_max_word: type: ik use_smart: false ik_smart: type: ik use_smart: true
或者简单配置:
index.analysis.analyzer.ik.type : ik
六、启动测试。
http://123.88.88.88:9200/_analyze?analyzer=ik&pretty=true&text=sojson在线工具 结果为:
{ "tokens" : [ { "token" : "sojson", "start_offset" : 0, "end_offset" : 6, "type" : "ENGLISH", "position" : 0 }, { "token" : "在线", "start_offset" : 6, "end_offset" : 8, "type" : "CN_WORD", "position" : 1 }, { "token" : "工具", "start_offset" : 8, "end_offset" : 10, "type" : "CN_WORD", "position" : 2 } ] }
报错:
Caused by: java.lang.IllegalArgumentException: Unknown Analyzer type [ik] for [ik]
状况: 我在安装完elasticsearch(后称elas)后,启动项目,能够正常的使用,而且启动的时候并无报错,都没有问题的。但当我安装并配置完ik后,我再启动elas的时候,就这个报错。
解决: 查了网上通常有几种状况, 1 elas和ik的版本没有对应引发。 2 没有正确配置ik。 3 这是个人状况,我在安装elas的时候,曾经进行过测试的,包括增删改查索引等操做,故在安装ik后,elas里还有一个索引,因此在启动elas+ik的时候就报错了,我到elas里将那个因此删除后,就能够正常启动elas服务了。