最近在看spring源碼深度解釋這本書奏属,書上需要下載和自己手動(dòng)編譯源碼藻肄,在此記錄一下自己的流程。編譯spring源碼需要下載git以及gradle兩個(gè)工具皆串,如何下載安裝git就不在此說了,網(wǎng)上很多教程眉枕,git主要用于下載spring源碼的恶复。
下載安裝教程
spring的源碼現(xiàn)在已經(jīng)更新到spring4了,但是如果是學(xué)習(xí)的話用spring3.2也是可以的速挑,而且編譯spring4好像比較多錯(cuò)誤谤牡,所以就選擇了spring3.2。
1姥宝、首先需要去github的官網(wǎng)查找spring的源碼翅萤,spring可以看到spring的源碼版本,我們主要選擇3.2.x的版本進(jìn)行下載腊满。
github官網(wǎng)的地址是:
(https://github.com/spring-projects/spring-framework)
Paste_Image.png
2套么、我們打開電腦的git bash,選擇一個(gè)路徑碳蛋,用git clone命令把spring的源碼下載到我們想要存放的路徑胚泌。命令我們可以使用:
git clone -b 3.2.x https://github.com/spring-projects/spring-framework.git,
其中肃弟,“-b 3.2.x”就是下載指定版本的spring源碼玷室,否則它默認(rèn)會(huì)下載最新的master分支的,如果需要其他版本修改3.2.x即可笤受。
Paste_Image.png
3穷缤、電腦下載安裝gradle-2.5-all.zip,為什么要用2.5的版本箩兽,原因就在于這個(gè)版本適合spring3.2版本的編譯绅项,不會(huì)出錯(cuò),其他版本都會(huì)有問題比肄。下載后解壓快耿,然后配置一下環(huán)境變量即可,環(huán)境變量主要配置一個(gè)GRADLE_HOME以及配置一下path目錄即可芳绩。這里給出一個(gè)可以下載gradle各個(gè)版本的網(wǎng)址:
(http://services.gradle.org/distributions/)
Paste_Image.png
Paste_Image.png
編譯過程
1掀亥、編譯的時(shí)候我們可以有兩種方式,一種是全部源碼都編譯妥色,下載的spring源碼是自帶了gradle的搪花,不過這個(gè)過程很慢,而且很容易出錯(cuò)嘹害,這種方式網(wǎng)上都有撮竿,就點(diǎn)擊下載spring源碼后的gradlew.bat文件即可,第二種是利用我們自己下載的gradle2.5來編譯笔呀,而且是一個(gè)一個(gè)文件編譯幢踏,這種比較快,而且不容易出錯(cuò)许师。比如:我們首先通過cmd進(jìn)入spring-tx這個(gè)文件夾房蝉,然后執(zhí)行g(shù)radle cleanIdea eclipse命令,它就會(huì)自動(dòng)幫我們進(jìn)行編譯了微渠,一個(gè)一個(gè)文件夾編譯直到全部都編譯完成搭幻。
Paste_Image.png
2、編譯完成后就可以把所有的都導(dǎo)入eclipse里面了逞盆,不過導(dǎo)入的時(shí)候都是紅色感嘆號(hào)檀蹋,這里spring-core缺少了兩個(gè)包,導(dǎo)致其他都不可用了云芦,要自己去下載然后放到指定的地方俯逾。這里給出一個(gè)csdn的下載地址:
(http://download.csdn.net/download/fankb222/9850931要積分,自己想辦法吧)
Paste_Image.png
Paste_Image.png
Paste_Image.png
3焕数、其他的缺少的test的包是沒有影響的纱昧,可以直接去掉,然后就可以看源碼了堡赔。
總結(jié)
目前只是編譯了源碼识脆,還沒仔細(xì)看,之后看了再做進(jìn)一步的總結(jié)吧善已。