1. 程式人生 > >IK分詞器安裝

IK分詞器安裝

ik分詞器安裝

簡介:

  • 當前講解的 IK分詞器 包的 version 為1.8。

一、下載zip包。

下面有附件鏈接【ik-安裝包.zip】,下載即可。

二、上傳zip包。

下載後解壓縮,如下圖。

技術分享

打開修改修改好後打成zip包。

# ‘elasticsearch.version‘ version of elasticsearch compiled against# You will have to release a new version of the plugin for each new# elasticsearch release. This version is checked when the plugin# is loaded so Elasticsearch will refuse to start in the presence of# plugins with the incorrect elasticsearch.version.#把這個版本號改成你對應的版本即可,如你的版本是2.2.0,就改成2.2.0elasticsearch.version=2.0.0

/elasticsearch-2.0.0/plugins

在plugins/目錄下上傳,並且解壓縮。此處註意目錄結構必須是這樣,如下圖:

技術分享


三、啟動測試

呃,我們發現報錯了。

[[email protected] elasticsearch-2.0.0]$ ./bin/elasticsearch[2016-03-01 10:32:02,958][INFO ][node                     ] [Landslide] version[2.0.0], pid[11109], build[de54438/2015-10-22T08:09:48Z][2016-03-01 10:32:02,959][INFO ][node                     ] [Landslide] initializing ...Exception in thread "main" java.lang.IllegalStateException: Unable to initialize pluginsLikely root cause: java.nio.file.FileSystemException: /home/elasticsearch/es/elasticsearch-2.0.0/plugins/ik.zip/plugin-descriptor.properties: Not a directory        at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)        at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)        at java.nio.file.Files.newByteChannel(Files.java:317)        at java.nio.file.Files.newByteChannel(Files.java:363)        at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:380)        at java.nio.file.Files.newInputStream(Files.java:108)        at org.elasticsearch.plugins.PluginInfo.readFromProperties(PluginInfo.java:86)        at org.elasticsearch.plugins.PluginsService.getPluginBundles(PluginsService.java:306)        at org.elasticsearch.plugins.PluginsService.(PluginsService.java:112)        at org.elasticsearch.node.Node.(Node.java:144)        at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:145)        at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:170)        at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:270)        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)

一看我們就知道,他去找plugins/ik.zip 下的配置文件對吧。

解決方案是把這個ZIP包刪除即可。

刪除後再次啟動。

[[email protected] elasticsearch-2.0.0]$ ./bin/elasticsearch[2016-03-01 10:32:02,958][INFO ][node                     ] [Landslide] version[2.0.0], pid[11109], build[de54438/2015-10-22T08:09:48Z][2016-03-01 10:32:02,959][INFO ][node                     ] [Landslide] initializing ...Exception in thread "main" java.lang.IllegalStateException: Unable to initialize pluginsLikely root cause: java.nio.file.FileSystemException: /home/elasticsearch/es/elasticsearch-2.0.0/plugins/ik.zip/plugin-descriptor.properties: Not a directory        at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)        at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)        at java.nio.file.Files.newByteChannel(Files.java:317)        at java.nio.file.Files.newByteChannel(Files.java:363)        at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:380)        at java.nio.file.Files.newInputStream(Files.java:108)        at org.elasticsearch.plugins.PluginInfo.readFromProperties(PluginInfo.java:86)        at org.elasticsearch.plugins.PluginsService.getPluginBundles(PluginsService.java:306)        at org.elasticsearch.plugins.PluginsService.(PluginsService.java:112)        at org.elasticsearch.node.Node.(Node.java:144)        at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:145)        at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:170)        at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:270)        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)

我們從啟動就看的出來,IK分詞器安裝成功。

[2016-03-01 10:34:28,803][INFO ][plugins                  ] [Big Wheel] loaded [analysis-ik], sites [head]

測試:

http://123.57.163.79: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  }, {    "token" : "真好",    "start_offset" : 10,    "end_offset" : 12,    "type" : "CN_WORD",    "position" : 3  }, {    "token" : "好用",    "start_offset" : 11,    "end_offset" : 13,    "type" : "CN_WORD",    "position" : 4  } ]}

得出Over 。

分詞器下載地址:http://down.51cto.com/data/2323000

本文出自 “上善若水” 博客,請務必保留此出處http://yushiwh.blog.51cto.com/2911795/1942627

IK分詞器安裝