概要
- 我們?cè)跀]Spring源碼的時(shí)候,可以通過(guò)自己本地新建一個(gè)項(xiàng)目库糠,把spring對(duì)應(yīng)的依賴?yán)M(jìn)來(lái)伙狐,如果我們采用這種方式學(xué)習(xí)源碼,會(huì)有一個(gè)很大的弊端就是瞬欧,不能修改源碼贷屎,不能對(duì)每行源碼添加我們自己的注釋
- 所以,我們?cè)跀]spring源碼前艘虎,先把spring源碼下載到本地唉侄,環(huán)境先搭建好
一、下載spring源碼
首先野建,我們?nèi)pring官網(wǎng)去看下spring官網(wǎng)地址
-
然后我們點(diǎn)擊右上角的spring源碼在GitHub的地址
-
進(jìn)入GitHub之后属划,spring默認(rèn)是在main分支上,我們準(zhǔn)備看spring 5.2.6-RELEASE分支的代碼
-
然后分支選擇5.2.x,tag選擇v5.2.6.RELEASE
然后我們把spring的代碼下載下來(lái)候生,可以通過(guò)git clone的方式同眯,也可以通過(guò)下載zip包的方式
二、gradle環(huán)境準(zhǔn)備
-
因?yàn)閟pring使用的gradle構(gòu)建的項(xiàng)目唯鸭,所以我們本地需要安裝配置好gradle须蜗,這個(gè)具體可以根據(jù)你自己的操作系統(tǒng)(win or mac)去進(jìn)行配置,安裝配置好了之后,使用gradle -version查看是否安裝成功以及gradle版本號(hào)
三明肮、將spring源碼中的gradle配置進(jìn)行更改
在我們下載好的spring源碼目錄下菱农,修改對(duì)應(yīng)的配置文件,從而使gradle為我們構(gòu)建好spring源碼
- 修改gradle.properties
version=5.2.6.RELEASE
## gradle編譯時(shí)晤愧,會(huì)下載很多東西大莫,建議內(nèi)存調(diào)大點(diǎn)
org.gradle.jvmargs=-Xmx2048M
## 開(kāi)啟gradle緩存
org.gradle.caching=true
## 開(kāi)啟gradle并行編譯
org.gradle.parallel=true
## 開(kāi)啟gradle守護(hù)進(jìn)程模式
org.gradle.daemon=true
- 在settings.gradle中蛉腌,添加阿里云地址配置官份,是gradle更好的下載資源包
pluginManagement {
repositories {
maven { url "https://maven.aliyun.com/repository/public"}
gradlePluginPortal()
maven { url 'https://repo.spring.io/plugins-release' }
}
}
apply from: "$rootDir/gradle/build-cache-settings.gradle"
3.修改build.gradle配置文件
repositories {
maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter' }
mavenCentral()
maven { url "https://repo.spring.io/libs-spring-framework-build" }
}
四、Intellij導(dǎo)入spring源碼
-
構(gòu)建完成之后烙丛,接下來(lái)舅巷,我們就可以正式的擼spring源碼了
五、總結(jié)
我們先從spring官網(wǎng)找到spring源碼在GitHub的位置河咽,然后下載到本地
因?yàn)閟pring是使用gradle進(jìn)行構(gòu)建的钠右,所以我們本地需要安裝gradle
環(huán)境準(zhǔn)備好之后,接下來(lái)忘蟹,我們就一步一步的徹底吃透spring源碼