Elasticsearch源碼導入IDEA


版權聲明:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
本文鏈接: https://blog.csdn.net/yan3013216087/article/details/91192336

前言:gradle不同版本之間存在不兼容的情況,使用其他版本可能會報錯。
編譯項目時,網絡問題可能會導致依賴下載失敗,建議用自己的網,不要用公司有限制的網。

1.環境與准備工作

  • windows 10
  • IDEA 2018.2.5
  • JDK 1.8.0_162
  • Gradle 3.5

2.安裝Gradle 3.5

參考:https://gradle.org/install/
gradle是免安裝的,下載安裝包並解壓到本地安裝目錄,並配置環境變量即安裝完成。
在系統變量 Path 下添加 \安裝目錄\gradle-3.5\bin,例如:
配置環境變量
在這里插入圖片描述
驗證安裝結果:
在這里插入圖片描述
配置遠程阿里雲倉庫
在gradle目錄下的init.d目錄中創建名為init.gradle文件,內容如下:

allprojects{
    repositories {
        def REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public/'
        all { ArtifactRepository repo ->
            if(repo instanceof MavenArtifactRepository){
                def url = repo.url.toString()
                if (url.startsWith('https://repo1.maven.org/maven2') || url.startsWith('https://jcenter.bintray.com/')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $REPOSITORY_URL."
                    remove repo
                }
            }
        }
        maven {
            url REPOSITORY_URL
        }
    }
}

    
    
    
            
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

3.下載源代碼

下載鏈接:https://github.com/elastic/elasticsearch/tree/v5.3.2
在這里插入圖片描述

4.編譯項目,打包

進入解壓后的源碼目錄,執行編譯命令:

gradle assemble

    
    
    
            
  • 1

編譯過程中會下載依賴文件,編譯完成后系統打印“BUILD SUCCESSFUL”代表編譯成功。完整的打包文件位於
./distribution目錄,包含tar、zip等多種格式的包,例如:
在這里插入圖片描述

5.將工程導入IDEA

1)進入elasticsearch源碼目錄,執行 gradle idea, 生成IDEA的項目文件,正常完成顯示“BUILD SUCCSEEFUL”.

2)創建用於ES讀取配置的目錄
創建一個目錄,此處命名為eshome,用於ES從中加載模塊、讀取配置、寫入數據和日志,可以將gradle編譯打包的軟件包解壓,然后將config、modules、plugins目錄拷貝到eshome文件夾中,軟件包位於distribution/zip/build/distributions下:

(1)在ES源碼解壓后的目錄下,進入gradle打包后的軟件包所在目錄:distribution/zip/build/distributions
在這里插入圖片描述
(2)解壓zip文件,並進入解壓后的目錄,將config、modules、plugins目錄拷貝到eshome目錄:

在這里插入圖片描述
3)選擇import project,將源碼加壓后的文件目錄導入,選擇gradle
在這里插入圖片描述
配置JVM和gradle home
在這里插入圖片描述
在這里插入圖片描述
導入后:
在這里插入圖片描述
4)IDEA菜單中選擇Run->Edit Configurations,點擊“+”添加Application,配置下列信息:
在這里插入圖片描述
其中vm options配置如下:

-Des.path.home=/Users/shanmenglu/Documents/eshome
-Des.path.conf=/Users/shanmenglu/Documents/eshome/config
-Xms1g
-Xmx1g
-Dlog4j2.disable.jmx=true
-Djava.security.policy=/Users/shanmenglu/Documents/eshome/config/elasticsearch.policy

    
    
    
            
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

Main Class配置啟動類,該類在core目錄下src/java/org/elasticsearch/bootstrap/Elasticsearch.java

5.運行main方法

點擊Run運行項目,控制台輸出下列日志:
在這里插入圖片描述
在瀏覽器地址欄輸入http://localhost:9200,顯示如下內容,說明ElasticSearch本地成功運行
在這里插入圖片描述
參考:
《ElasticSearch源碼解析與優化實戰》
https://blog.csdn.net/lom9357bye/article/details/86662367
https://blog.csdn.net/weixin_33912445/article/details/87292225
https://www.w3cschool.cn/gradle/9b5m1htc.html
https://blog.csdn.net/wqc19920906/article/details/82353541

                                </div>
            <link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-e9f16cbbc2.css" rel="stylesheet">
                </div>
posted @ 2019-10-29 17:10  學仰泳的魚  閱讀( 808)  評論( 0編輯  收藏


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM