spring原始碼閱讀環境(幾分鐘下載包)

啊k傳發表於2020-02-07

簡述:

  1. 不能忍受慢(看到這裡你就準備笑吧!!)
  2. 其他大神的部落格實在讓我難受
  3. 自己動手,下載spring,編譯spring原始碼,匯入idea,開啟學習模式!!
  4. 筆者環境:java1.8.0_181,gradle 5.6.3,idea2019.2.4

1.下載spring原始碼:

github地址:https://github.com/spring-projects/spring-framework
碼雲地址:https://gitee.com/LSZYAB/spring-framework.git

github的童鞋,很慢!碼雲的童鞋飛起!!但是筆者給的是spring5.1.x的,想要看低版本的怎麼辦?
給個老鐵的連結:
[csdn]: https://blog.csdn.net/xy_zhangchn/article/details/81558144
在這裡插入圖片描述

2.安裝gradle:

  1. 官網(慢):http://gradle.org/downloads
  2. 下載地址(快):https://services.gradle.org/distributions/
    在這裡插入圖片描述
  3. 解壓:
    在這裡插入圖片描述
  4. 環境配置:
    新建系統變數:
GRADLE_HOME
E:\install-dev\gradle-5.6.3    ## 修改為自己的路徑

在這裡插入圖片描述
Path中新增資訊:

%GRADLE_HOME%\bin

在這裡插入圖片描述

cmd檢視gradle版本:gradle -v
在這裡插入圖片描述

  1. 修改gradle配置:
    gradle根目錄:\init.d\下,新建一個:init.gradle 檔案,新增以下內容(為了下載包更快唄!)
    在這裡插入圖片描述
allprojects{
    repositories {
        def REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public/'
        all { ArtifactRepository repo ->
            def url = repo.url.toString()
            if ((repo instanceof MavenArtifactRepository) && (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. 修改spring原始碼根目錄下build.gradle檔案:將原來的資訊替換成以下的資訊
		allprojects {
			repositories {
				maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
			}
		}

在這裡插入圖片描述

3.構建原始碼:

  1. 在原始碼根目錄有一個檔案:import-into-idea.md(別理它,我們繼續!!)
1. Precompile `spring-oxm` with `./gradlew :spring-oxm:compileTestJava`
2. Import into IntelliJ (File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle)
3. When prompted exclude the `spring-aspects` module (or after the import via File-> Project Structure -> Modules)
4. Code away

cmd到spring原始碼下:執行gradlew :spring-oxm:compileTestJava,然後體驗一下速度吧!!
在這裡插入圖片描述
出現如圖所示的,構建成功了!接下來匯入idea了!!

4.匯入idea:

  1. File -> New -> Project from Existing Sources -> 找到選擇spring-framework原始碼 -> 選擇build.gradle
  2. 筆者的開啟之後,idea配置gradle: File->setting->gradle
    在這裡插入圖片描述
    點選ok,右下角開始載入包,但是還是慢!!最後修改:gradle.properties配置檔案:
org.gradle.daemon=true
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.parallel=true
org.gradle.configureondemand=true

在這裡插入圖片描述
好了!!筆者沒有花幾個小時下載包,構建的時候也沒出現什麼問題,人品比較好,江湖再見!!
(如果你直接下拉我的碼雲:對不住了!!我已經構建好了,直接匯入idea吧,但是記得走修改gradle配置,讓它更‘快!!!’)

相關文章