搜索引擎ElasticSearch源碼編譯安裝和Debug環境搭建

環境準備

說明:本文章使用的ES版本是:6.7.0html

JDK

Elastisearch 6.7.0編譯須要JDK版本10.0及以上,我直接安裝了JDK12.JDK下載地址:https://www.oracle.com/technetwork/java/javase/downloads/index.htmljava

Gradle

brew install gradlegit

Elastisearch源碼

git clone https://github.com/elastic/elasticsearch.git
git tag
git checkout v6.7.0

使用IDEA DEBUG 源碼

將工程Import到IDEA

進入Elastisearch根目錄,把源碼編譯爲IDEA工程:./gradlew ideagithub

clipboard.png

選擇Elasticsearch目錄進入:算法

clipboard.png

選擇Gradle導入後,下一步:bootstrap

clipboard.png

選擇如上的選項,點擊Finish,導入源碼到IDEA完成。瀏覽器

本地Debug代碼

使用IntelliJ在本地調試ES,有兩種方式,一種是直接在IntelliJ上運行ES進行調試,但須要不少繁雜得配置。
配置方法:進入IDEA,Run -> Edit Configurationsoracle

clipboard.png

其中VM options以下:jvm

clipboard.png

其中,elasticsearch.policy以下:elasticsearch

clipboard.png

最後,運行org.elasticsearch.bootstrap.Elasticsearch::main(java.lang.String[]) 方法就能夠調試了。

遠程調試

另外一種是遠程調試,先用debug模式,在本地啓動ES服務:./gradlew run --debug-jvm

clipboard.png

能夠看到,debug模式監聽的端口是8000

clipboard.png

而後在IDE代碼中設置斷點,點擊debug按鈕:

clipboard.png

同時也能夠在瀏覽器中經過訪問:http://127.0.0.1:9200查看ES狀態
clipboard.png

http://127.0.0.1:9200/_cat/health
clipboard.png

下一篇文章將說一下ES的啓動過程。

系列文章

  1. 搜索引擎ElasticSearch源碼編譯和Debug環境搭建
  2. 搜索引擎ElasticSearch的啓動過程
  3. Elasticsearch建立索引流程
  4. Elasticsearch搜索過程詳解
  5. Elasticsearch搜索相關性排序算法詳解
  6. Elasticsearch中的倒排索引
相關文章
相關標籤/搜索