最近在學習spring源碼,随着學習的深入,在感歎spring的強大的同時,也覺得學的越多,好像不明白的地方越多,是以決定開始寫部落格,以此用來記錄學習的過程。
很多人平時工作學習中可能也會零零散散的看過一些spring的源碼,但是都是在自己的項目中,看過spring的jar包中的class或者source。從今天開始,我要在spring的項目中看源碼、做調試。。。感覺自己要起飛了!
一、spring本地環境建構
以下環境都是基于windows 10系統搭建
- java版本:8+
- IDE:idea2019.2.3
- gradle:5.6.3
- jdk下載下傳安裝略過
- gradle下載下傳安裝:https://blog.csdn.net/zhaokai0130/article/details/81008719
- spring源碼下載下傳:https://github.com/spring-projects/spring-framework
這裡啰嗦一句:建議IDE用idea最新的2019.2.3版本,spring framework選擇5.1.x,由于大多數人工作中都在使用maven做建構工具,spring官方是使用gradle做建構的,不過建構工具都大同小異,簡單了解一下就好了。
OK,話不多說,進入正題
選擇5.1.x版本,由于下載下傳速度問題,不直接git clone,選擇下載下傳zip包到本地,以下示範源碼下載下傳、環境建構、編譯、測試的整個過程。
-
spring5.1.x源碼下載下傳

-
idea中建構spring項目
新增project-
以下一直下一步,最後編譯時間比較長,應該在1小時左右,運氣不好要半天,哈哈沒辦法,等着就好。
-
測試demo
在spring項目中建立一個module,在改moudle中建立一個測試類TestService.java
配置類如下
main方法執行如下
我們可以看到,在新建立的moudle裡面的測試類加上了@component注解,經過spring容器啟動後我們通過 ac.getBean(TestService.class) 這行代碼成功的獲得的spring容器中的對象。
至此,我們成功的完成的spring開發環境的搭建,并通過DEMO進行了驗證,下面我們将開啟spring的全新旅程,開始讀源碼啦!