- 分词器安装analyzer=standard(标准分词)
在线分词
{ "tokens" : [ { "token" : "sojson", "start_offset" : 0, "end_offset" : 6, "type" : "", "position" : 0 }, { "token" : "在", "start_offset" : 6, "end_offset" : 7, "type" : " ", "position" : 1 }, { "token" : "线", "start_offset" : 7, "end_offset" : 8, "type" : " ", "position" : 2 }, { "token" : "工", "start_offset" : 8, "end_offset" : 9, "type" : " ", "position" : 3 }, { "token" : "具", "start_offset" : 9, "end_offset" : 10, "type" : " ", "position" : 4 } ]}
1、下载 下载地址为: 2.3.3版本到对于版本上下载1.9.3版本
2、解压。
把下载的 elasticsearch-analysis-ik.zip解压。
3、 Maven 打包
进入elasticsearch-analysis-ik-master/ 下,打包。注意:打包后的文件在elasticsearch-analysis-ik-master/target/目录下
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 放入当前目录下,然后解压。
5、设置(2.0以上可以不设置,我没有设置)。
在 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
6、启动测试。
结果为:
{ "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服务了。