ElasticSearch-carrot2 插件可以實(shí)現(xiàn)在elasticsearch的查詢結(jié)果的基礎(chǔ)上進(jìn)行聚類。但是插件包打包容易出現(xiàn)各種問題耕渴,這里提供打包需要軟件版本和打包命令朽色。
Github源碼
中文介紹
ElasticSearch-carrot2 插件介紹
Carrot2 - Open Source Search Results Clustering Engine是一個(gè)開源搜索結(jié)果聚類引擎邻吞。它可以自動(dòng)地根據(jù)內(nèi)容將搜索結(jié)果組織成更小的主題分類。
更多的詳細(xì)的介紹參考:
Github源碼
中文介紹
ElasticSearch-carrot2 插件打包
源碼下載
git clone http://github.com/carrot2/elasticsearch-carrot2.git
選擇版本
ElasticSearch-carrot2 對(duì) elasticsearch 版本要求比較嚴(yán)格葫男,可參考以下內(nèi)容選擇
| Clustering Plugin | Elasticsearch | Carrot2 | Lingo3G |
------------------------------------------------------------------
| (master, unreleased) | 3.16.1 | 1.16.1 |
| 7.0.0 -> 7.5.0 | 3.16.1 | 1.16.1 |
| 6.8.5 | 3.16.1 | 1.16.1 |
| 6.7.1 | 3.16.1 | 1.16.1 |
| 6.6.2 | 3.16.1 | 1.16.1 |
| 6.5.4 | 3.16.0 | 1.16.0 |
| 6.4.3 | 3.16.0 | 1.16.0 |
| 6.3.2 | 3.16.0 | 1.16.0 |
| 6.2.4 | 3.16.0 | 1.16.0 |
| 6.2.3 | 3.15.1 | 1.15.1 |
| 6.1.1 | 3.15.1 | 1.15.1 |
| 5.5.2 | 3.15.1 | 1.15.1 |
| 5.4.0 | 3.15.1 | 1.15.1 |
| 5.3.0 | 3.15.1 | 1.15.1 |
| 5.2.0 | 3.15.1 | 1.15.1 |
| 5.1.1 | 3.15.0 | 1.15.0 |
| 2.4.2 -> 2.4.3 | 3.15.0 | 1.15.0 |
| 2.4.1.1 | 3.15.0 | 1.15.0 |
| 2.4.1 -> 2.4.1 | 3.14.0 | 1.14.0 |
| 2.4.0 -> 2.4.0.1 | 3.12.0 | 1.13.0 |
| 2.3.0 -> 2.3.4 | 3.12.0 | 1.13.0 |
| 2.2.1 | 3.12.0 | 1.13.0 |
| 2.2.0 | 3.11.0 | 1.12.3 |
| 2.1.0 -> 2.1.2 | 3.11.0 | 1.12.3 |
| 2.0.0 -> 2.0.2 | 3.11.0 | 1.12.3 |
| 1.9.1 | 1.6.0 -> 1.7.2+? | 3.10.4 | 1.12.3 |
| 1.9.0 | 1.6.0 -> 1.7.0+? | 3.10.1 | 1.12.0 |
| 1.8.0 | 1.4.0 -> 1.6.0+ | 3.9.3 | 1.10.0 |
| 1.7.0 | 1.3.0 -> 1.3.5+ | 3.9.3 | 1.10.0 |
| 1.6.0 | 1.2.0 -> 1.2.2+ | 3.9.2 | 1.9.1 |
| 1.5.0 | 1.1.0 -> 1.1.2+ | 3.9.2 | 1.9.1 |
| 1.4.0 | 1.0.0 -> 1.0.3 | 3.9.0 | 1.9.0 |
| 1.3.1 | 1.0.0 -> 1.0.3 | 3.8.1 | 1.8.1 |
| 1.3.0 | 1.0.0 -> 1.0.3 | 3.8.1 | 1.8.1 |
| 1.2.2 | 0.90.10-> 0.90.13 | 3.8.0 | 1.8.0 |
| 1.2.1 | 0.90.10-> 0.90.11 | 3.8.0 | 1.8.0 |
| 1.2.0 | 0.90.4 -> 0.90.9 | 3.8.0 | 1.8.0 |
| 1.1.1 | 0.90.4 -> 0.90.9 | 3.8.0 | 1.8.0 |
| 1.1.0 | 0.90.2 -> 0.90.3 | 3.8.0 | 1.8.0 |
| 1.0.1 | 0.90 -> 0.90.3 | 3.7.1 | 1.7.1 |
| 1.0.0 | 0.90 -> 0.90.3 | 3.7.1 | 1.7.1 |
------------------------------------------------------------------
github 上提供了很多 tag 標(biāo)簽抱冷,打包的時(shí)候根據(jù) elasticsearch 版本號(hào)選擇對(duì)應(yīng) tag。如果沒有該版本對(duì)應(yīng)的tag梢褐,可以選擇與之對(duì)應(yīng)的大版本旺遮。如需要7.5.2的插件赵讯,可選擇tag為7.5.0的代碼,然后修改 build.gradle 版本號(hào)耿眉。
打包介紹
7.5.0
打包要求:
- JDK: 12.0.2
- gradle: gradle-6.3
jdk下載這里就不多介紹了边翼,自己去官網(wǎng)下載就好
git clone http://github.com/carrot2/elasticsearch-carrot2.git
#基于tag7.5.0 切一個(gè)分支
git checkout -b 7.5.0 release/7.5.0
# 確認(rèn)jdk版本
java -version
java version "12.0.2" 2019-07-16
Java(TM) SE Runtime Environment (build 12.0.2+10)
Java HotSpot(TM) 64-Bit Server VM (build 12.0.2+10, mixed mode, sharing)
# 開始打包(這里跳過javadoc)
cd elasticsearch-carrot2/
./gradlew clean
./gradlew build -x javadoc
# 打包的結(jié)果
# 打包結(jié)果在 build/distributions/ 目錄下
ls build/distributions/
elasticsearch-carrot2-7.5.0.jar elasticsearch-carrot2-7.5.0.pom elasticsearch-carrot2-7.5.0.zip elasticsearch-carrot2-7.5.0-javadoc.jar elasticsearch-carrot2-7.5.0-sources.jar
# elasticsearch 安裝插件
# 將 elasticsearch-carrot2-7.5.0.zip 拷貝到一個(gè)目錄下(我這里是D:\es-plugins)
# 進(jìn)入 elasticsearch 根目錄下(我這里是windows命令,linux一樣)
./bin/elasticsearch-plugin.bat install file:///d:/es-plugins/elasticsearch-carrot2-7.5.0.zip
# 查看已安裝插件
curl localhost:9200/_cat/plugins
MS-KGWVEZPQDSXZ elasticsearch-carrot2 7.5.0
7.5.2
由于github上沒有 7.5.2 的 tag鸣剪,所以基于 7.5.0 的代碼组底,修改 build.gradle 中 version 和 version_es 為 7.5.2 。其他的打包過程和上面就一樣了
7.6.0
打包要求
* jdk 版本 13
打包過程和7.5.0一樣筐骇,不過要求jdk版本是13债鸡。首先基于 release/7.6.0
tag 切一個(gè) 7.6.0 分支,然后重復(fù) 7.5.0 打包過程铛纬。
資源
不行自己打包的兄弟可以直接去下面的鏈接下載
遇到問題
- jdk 版本不對(duì)
選擇正確版本的jdk
The compiler java.home must be set to a JDK installation directory for Java 13 but is [D:\Program Files\Java\jdk-12.0.2] corresponding to [12]