下載編譯好的安裝包,解壓縮就可以直接使用
如果是自己編譯的版本在安裝插件時可能會出現一些問題,比如安裝elasticsearch-head,雖然安裝成功,但是插件運行不正常,能夠查看索引,但是節點的相關狀態信息無法顯示,所以在熟悉elasticsearch的細節後再自編譯版本比較合適,如果學習使用的話還是在官網上下載編譯好的版本。
上面這一步很簡單,沒有出現任何問題就通過了,然而在安裝ik時走了很多彎路,爲防止今後出現類似情況將此次安裝過程中出現的問題記錄下來。
1. 從elasticsearch-rtf中下載的elasticsearch-analysis-ik-1.2.6.jar直接拷貝到
ES的plugins/analysis-ik目錄下,運行ES報如下錯誤:
- org.elasticsearch.ElasticsearchIllegalArgumentException: failed to find analyzer type [ik] or tokenizer for [ik]
- org.elasticsearch.common.settings.NoClassSettingsException: Failed to load class setting [type] with value [ik]
- java.lang.ClassNotFoundException: org.elasticsearch.index.analysis.ik.IkAnalyzerProvider
在google上找到方法,需要自己編譯ik包,原因如下:
在ik項目主頁https://github.com/medcl/elasticsearch-analysis-ik上有個
版本列表
Version
-—————
master | 1.4.0 → master
1.2.9 | 1.4.0
1.2.8 | 1.3.2
1.2.7 | 1.2.1
1.2.6 | 1.0.0
1.2.5 | 0.90.2
1.2.3 | 0.90.2
1.2.0 | 0.90.0
1.1.3 | 0.20.2
1.1.2 | 0.19.x
1.0.0 | 0.16.2 → 0.19.0
新下載的ES是1.4.2版本的,所以會出現問題。
2. 用plugin -i medcl/elasticsearch-analysis-ik 無法安裝成功,應該也是版本的問題
3. 編譯安裝elasticsearch-analysis-ik
用需要用到maven,第一次用maven編譯時間需要很長,大部分時間都是在下載依賴包,依賴包可在~/.m2中找到
在源碼目錄下執行 mvn package
編譯完成後在target/releases目錄下有個elasticsearch-analysis-ik-1.2.9.zip文件,將其拷貝到plugins/analysis-ik中解壓縮即可。如果只是拷貝target目錄下的jar文件的話,會在運行elasticsearch時出現找不到httpclient。
詞庫將源碼包中的config/ik拷貝到ES目錄下就可以了,不用作其它配置,方法參考項目主頁的方法。
4. 配置,在config/elasticsearch.yml中添加下行
- index.analysis.analyzer.ik.type : "ik"
直接運行,看到無錯誤的話,說明ik裝成功
from: http://jack-boy.iteye.com/blog/2171853?utm_source=tuicool