1. 程式人生 > >elasticsearch6.0原始碼編譯

elasticsearch6.0原始碼編譯

Mac 筆記本
IntelliJ Idea,JDK1.8,gradle3.5,elasticsearch-6.0.0-rc2的發行版

gradle配置國內映象源,
~/.gradle 目錄下放置 init.gradle檔案,檔案內容如下:

allprojects{
    repositories {
        def ALIYUN_REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public'
        def ALIYUN_JCENTER_URL = 'http://maven.aliyun.com/nexus/content/repositories/jcenter'
        maven {
                url ALIYUN_REPOSITORY_URL
            url ALIYUN_JCENTER_URL
        }
    }
}

命令模式下,執行gradle idea命令(v6.0.0-rc2)
成功以後,idea --> file -->project from existing sources

不是每個人的電腦中都安裝了gradle,也不一定安裝的版本是要編譯專案需要的版本,
那麼gradlew裡面就配置要需要的gradle版本,然後使用者只需要執行gradlew就可以按照
配置下載對應的gradle到專案的目錄中,僅僅給專案本身用,然後就是clean、build等操作,
但是如果執行gradle clean 這樣的命令的話,系統使用的是電腦環境變數中配置的gradle,
或者是找不到命令。此時我們就用gradlew clean這個命令,其實內部呼叫的是本專案中的gradle來執行的,
所以就相當於進行了一次包裝。


distribution包中的rpm/src/main/packaging/init.d/,這就是elasticsearch的初始化的地方,path.conf等一些引數也是在這裡被設定的。


JVM引數:
-Des.path.conf=/xxx/xxx/elasticsearch-6.0.0-rc2
-Des.path.home=/xxx/xxx/elasticsearch-6.0.0-rc2
-Dlog4j2.disable.jmx=true

**

沒卵用,轉戰遠端Debug

**

在終端 執行 ./gradle run --debug-jvm

出現埠,
在這裡插入圖片描述

配置idea

在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

OK.完成。