參考:
https://segmentfault.com/a/1190000016185362
需要注意兩點:
- 因為最新的Elasticsearch版本為7.0啦,編譯需要JAVA11,配套的IDEA也需要升級到最新的版本,否則即使安裝了Java11, 也會包the directory of java is not a jdk home,更新Idea至2018.2.x版本就不存在這種問題了。
- 啟動ES,需要JVM options中配置一些參數(shù)
- 拷貝發(fā)行版本的config和modules至es源碼目錄中時,注意發(fā)行版本和源碼版本得配套,否則會出現(xiàn)版本不匹配的錯誤。
環(huán)境搭建完了之后,可以直接運行boostrap.elasticsearch#main()方法,來了解ES的啟動過程。
但是如果你想通過curl命令調(diào)用,例如創(chuàng)建index curl -XPUT 'localhost:9200/wangjun06' 來Debug Elasticsearch是如何創(chuàng)建索引的話,你需要采用以下方法:
- ./gradlew run --debug-jvm 來啟動ES的Debug模式
- 在Idea中設(shè)置remote調(diào)試,并設(shè)置IP端口為localhost:8000
- 等待ES起來之后,然后調(diào)用curl命令,設(shè)置斷點即可調(diào)試。