欢迎投稿

今日深度:

elasticsearch源码分析——源码编译,

elasticsearch源码分析——源码编译,


分析源码,首先要从搭建编译运行环境开始
之前用solr比较多,限于solr不能做动态扩容,现在转战elasticsearch

项目 版本
运行环境 windows
IDE intellij 2018.1.4
JDK 1.8.0_171
elasticsearch 5.5.1
gradle 4.3
maven 3.5.0 总是用得上的

备注:之前一直都用的是1.8.0_25,但是吧,编译的时候直接说这个版本的bug,编译不成功。好吧。
最早接触的就是es5.5.1版本,有想过使用6.2.3,但是吧,编译的时候又是一堆问题,JDK要9以上的。索性还是用5.5.1的版本吧。

不同的es版本对gradle的要求也不一样

编译前准备

源码

源码路径贴一下吧:https://github.com/elastic/elasticsearch/tree/v5.5.1
官网可以直接下载可运行版本:https://www.elastic.co/products/elasticsearch
当然官方文档都是要学习一下的吧,reference, java API。

JDK

不多说了

gradle

官方地址:https://gradle.org/install/
试过在mac os上安装,配置完brew[连接有说明如何安装],下载还是很方便的。

maven

官方地址:http://maven.apache.org/
仓库:http://mvnrepository.com/

编译源码

maven源

国内的maven源,阿里还是很好用的。
build.gradle文件中的allprojects添加repositories

allprojects {
  repositories {  
    maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
  }
}

编译

gradle clean
gradle idea
gradle run

  如果没有什么意外,就等待运行完成,就会在源码目录下生成,distribution\build\cluster\run node0\elasticsearch-5.5.1-SNAPSHOT这样一个路径。
  现在就打开IDE,导入源码目录,前提前面的gradle都已经安装。
  

启动参数配置

VM options配置 -Des.path.home="E:\Projects\es-6.2.3\source\elasticsearch-5.5.1\distribution\build\cluster\run node0\elasticsearch-5.5.1-SNAPSHOT" -Dlog4j2.disable.jmx=true
Main class: org.elasticsearch.bootstrap.Elasticsearch

6.2.3好像还要配置config目录

* org.elasticsearch.bootstrap.Elasticsearch 是启动入口,源码分析的话从这地方就能看到,es是如何初始化。Node加载,Guice注入*


写在前面的话

www.htsjk.Com true http://www.htsjk.com/Elasticsearch/32176.html NewsArticle elasticsearch源码分析——源码编译, 分析源码,首先要从搭建编译运行环境开始 之前用solr比较多,限于solr不能做动态扩容,现在转战elasticsearch 项目 版本 运行环境 windows IDE intellij 20...
相关文章
    暂无相关文章
评论暂时关闭