今天下午開始學習Spring源碼深度解析,第一章是進行環境搭建。。。。。照着書整,可是遇到不少問題,而後就各類百度,終於搭建成功了,這裏寫下博客進行記錄總結下: 一.安裝GitHub 一、到官網下載客戶端:https://github-windows.s3.amazonaws.com/GitHubSetup.exe,安裝完成後,會在桌面上出現兩個圖標,Git Shell和GitHub。那兩個圖標分別是命令行工具和圖形界面。 ![](https://img-blog.csdn.net/20180406221514763?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 2.打開Git Shell,接着在本地創建本身的版本倉庫。輸入cd d:,切換到D盤目錄.輸入mkdir spring,創建一個spring目錄。 3.接着進行下載Spring源碼:git clone git://github.com/spring-projects/spring-framework.git ![](https://img-blog.csdn.net/20180406222325835?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 4.請注意上面經過GitHub獲取的是Spring最新版本的源碼,可是,我下載了最新源碼後,用Gradle將源碼轉換爲Eclipse能夠讀取的形式一直失敗(經過變換JDK版本,Gradle版本都不行,因此最後放棄了部署最新的Spring版本源碼,之後再找問題了,先記錄下來)。 5.因此我放棄了最新版是Spring源碼,直接去下載了3.2版本的源碼: 輸入網址https://github.com/,搜索Spring ![](https://img-blog.csdn.net/20180406223505747?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 進行排序按照時間前後 ![](https://img-blog.csdn.net/20180406223627550?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) ![](https://img-blog.csdn.net/20180406223717777?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 選擇版本: ![](https://img-blog.csdn.net/20180406223754592?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 點擊下載: ![](https://img-blog.csdn.net/20180406223847669?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 下載完畢,而後進行第二步操做: 二.安裝Gradle Gradle是一個基於Groovy的構建工具,它使用Groovy來編寫構建腳本,支持依賴管理和多項目建立,相似Maven 下載地址:https://gradle.org/releases/ 我使用的是1.8 ![](https://img-blog.csdn.net/20180406224344838?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 添加系統變量:計算機-->屬性 ![](https://img-blog.csdn.net/20180406224504780?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) ![](https://img-blog.csdn.net/20180406224559722?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 配置完畢後,輸入命令:(JDK 1.7) ![](https://img-blog.csdn.net/20180406224710110?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 三.構建項目:spring-tx ![](https://img-blog.csdn.net/20180406224826422?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) ![](https://img-blog.csdn.net/20180406225025951?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 構建完畢後,將項目spring-tx進行導入到Eclipse中 ![](https://img-blog.csdn.net/20180406225144344?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 導入後,顯示爲紅色!號,右擊項目選擇Build Path -->configure Build Path,下面的截圖是我已經處理完畢錯誤截的圖片, 想說明的是:這個項目依賴下面幾個spring-項目,因此也須要依次導入。 ![](https://img-blog.csdn.net/20180406225403575?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 依次導入的所依賴的項目後: ![](https://img-blog.csdn.net/20180406225656521?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 在導入後,也遇到了一些報錯:(丟失spring-asm-repack和spring-cglib-repack包) a.到這個網站下載spring的lib壓縮包http://repo.springsource.org/libs-release-local/org/springframework/spring/ 我下載的是和源碼對應的spring-framework-3.2.0.RELEASE-dist.zip b.解壓spring-framework-3.2.0.RELEASE-dist.zip 到spring-framework-3.2.0.RELEASE-dist\\spring-framework-3.2.0.RELEASE\\libs路徑下找到spring-core-3.2.0.RELEASE.jar c.再把spring-core-3.2.0.RELEASE.jar用壓縮工具解壓出來:工具WinRAR(能夠直接百度下載) ![](https://img-blog.csdn.net/20180406230806341?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 而後cmd到這個目錄下執行命令: jar cvf spring-cglib-repack-3.1.jar org\\springframework\\cglib jar cvf spring-asm-repack-5.0.4.jar org\\springframework\\asm ![](https://img-blog.csdn.net/20180406230956134?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 而後把這兩個Jar放置在對應的路徑下,而且須要添加JAR地址配置: ![](https://img-blog.csdn.net/20180406231208516?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) ![](https://img-blog.csdn.net/20180406231234797?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 還遇到了編譯出錯的問題,最後找到的緣由是由於:之前JDK版本爲1.6,安裝1.7後,Eclipse項目的編譯版本沒有調到1.7,因此致使編譯出錯,有些只有1.7版本能支持。最後調換了JDK版本就能夠了。 ![](https://img-blog.csdn.net/20180406231617327?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) ![](https://img-blog.csdn.net/20180406231723320?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzA0ODg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- 本文來自 Simplezeng 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/u013030488/article/details/79837365?utm_source=copy