【elasticsearch】源码编译

一、下载源代码

直接用idea下载代码https://github.com/elastic/elasticsearch.git

导入idea

切换到特定版本的分支:比如7.17,之后idea会自己加上Run/Debug Elasitcsearch的,配置可以不用改,默认就好


切换分支

二、修改设置(可选)

为了方便, 在 gradle/run.gradle 中关闭 Auth 认证:

setting 'xpack.security.enabled', 'false'

或者使用其中的用户名密码:

user username: 'elastic-admin', password: 'elastic-password', role: 'superuser'

三、启动

先启动上面的 remote debug, 然后用 gradlew 启动项目:

./gradlew :run --debug-jvm
打开浏览器http://localhost:9200即可看到es相关信息了

es首页

四、问题点

4.1 有时候会报错,当前jdk为15,但所需jdk为17之类的,需要升级jdk,然后把.idea下的东西删掉,再重新导入
同时也可以使用alternatives指定java环境变量,更加简单

[root@master ~]# alternatives --config java

There are 4 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
   1           java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.11.0.9-2.tl3.x86_64/bin/java)
   2           java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.tl3.x86_64/jre/bin/java)
   3           /data/jdk-19/bin/java
*+ 4           /usr/java/jdk-17.0.2/bin/java

Enter to keep the current selection[+], or type selection number:

4.2 某天更新代码之后报错

Execution failed for task ':build-tools-internal:compileGroovy'.
> BUG! exception in phase 'semantic analysis' in source unit '/Users/wenzhihuai/IdeaProjects/elasticsearch/build-tools-internal/src/main/groovy/org/elasticsearch/gradle/internal/AntFixtureStop.groovy' Unsupported class file major version 63

解决中

五、搭配kibana

在mac用docker也行,但估计其他容器占用比较大,故从官网下载kibana mac版就好了,配置的时候还是要去掉es的鉴权。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容