ElasticSearch源码解读一:源码编译和Debug环境搭建

本文介绍了如何搭建ElasticSearch 6.7.0的源码编译环境,包括JDK 10.0+和Gradle的准备,以及如何使用IDEA导入并调试源码。详细讲解了本地Debug和远程调试的方法,包括IDEA的配置和启动参数设置。
摘要由CSDN通过智能技术生成

环境准备

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

JDK

Elastisearch 6.7.0编译需要JDK版本10.0及以上,我直接安装了JDK12.JDK下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html

Gradle

brew install gradle

Elastisearch源码

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

使用IDEA DEBUG 源码

将工程Import到IDEA

进入Elastisearch根目录,把源码编译为IDEA工程:./gradlew idea

在这里插入图片描述

选择Elasticsearch目录进入:

在这里插入图片描述

选择Gradle导入后,下一步:

在这里插入图片描述

选择如上的选项,点击Finish,导入源码到IDEA完成。

本地Debug代码

使用IntelliJ在本地调试ES,有两种方式,一种是直接在IntelliJ上运行ES进行调试,但需要很多繁杂得配置。
配置方法:进入IDEA,Run -> Edit Configurations

在这里插入图片描述

其中VM options如下:

在这里插入图片描述

其中,elasticsearch.policy如下:

在这里插入图片描述

最后,运行org.elasticsearch.bootstrap.Elasticsearch::main(java.lang.String[])方法就可以调试了。

远程调试

另一种是远程调试,先用debug模式,在本地启动ES服务:./gradlew run --debug-jvm

在这里插入图片描述

可以看到,debug模式监听的端口是8000

在这里插入图片描述

然后在IDE代码中设置断点,点击debug按钮:

在这里插入图片描述

同时也可以在浏览器中通过访问:http://127.0.0.1:9200 查看ES状态

在这里插入图片描述

http://127.0.0.1:9200/_cat/health?v

在这里插入图片描述

下一篇文章将说一下ES的启动过程。

系列文章

  1. ElasticSearch源码解读一:源码编译和Debug环境搭建
  2. ElasticSearch源码解读二:启动过程详解
  3. Elasticsearch源码解读三:创建索引过程详解
  4. Elasticsearch源码解读四:搜索过程详解
  5. Elasticsearch源码解读五:搜索相关性排序算法详解
  6. Elasticsearch源码解读六:ES中的倒排索引
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值