新聞中心
春節(jié)期間,有小伙伴私信我說(shuō)想要研究下Spring的源碼,想讓我出一期教程來(lái)實(shí)現(xiàn)IDEA導(dǎo)入Spring源碼,今天它來(lái)了~

目前創(chuàng)新互聯(lián)公司已為近1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、網(wǎng)站托管、服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計(jì)、廣南網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
版本 :IDEA 2020.2.3 ;Spring 5.0.x ;gradle 4.4.1 ;
先從github上面把 spring 源碼下載下來(lái)并解壓:
切記:解壓完成后不要直接用IDEA 打開(kāi),因?yàn)镾pring 的源碼是用 gradle 構(gòu)建的。如果已經(jīng)用IDEA 打開(kāi)了請(qǐng)刪除后重新解壓。
我們找到文件夾
spring-framework-5.0.x\gradle\wrapper
下的 gradle-wrapper.properties 文件,查看里邊的 gradle 版本,去官網(wǎng)下載。
下載完成之后把 gradle 的環(huán)境變量配置一下,可以用gradle -version 來(lái)驗(yàn)證 gradle 是否配置成功
在 USER_HOME/.gradle/ 下面新建 init.gradle 文件,將國(guó)外源換成國(guó)內(nèi)鏡像
allprojects {
repositories {
def REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public/'
all { ArtifactRepository repo ->
if(repo instanceof MavenArtifactRepository){
def url = repo.url.toString()
if(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
}
}
}在 spring-framework-5.0.x 下打開(kāi)git 的窗口執(zhí)行以下命令
./gradlew :spring-oxm:compileTestJava
該命令的作用是將 spring 轉(zhuǎn)成IDEA 可以導(dǎo)入的工程結(jié)構(gòu)。
如果你新開(kāi)的 Windows 的 dos 窗口,先進(jìn)入源碼的目錄文件夾,執(zhí)行命令不用加前面的./
配置 IDEA 中的 gradle
使用 File -> open 把 Spring 工程導(dǎo)入到 IDEA中,并等待 jar 下載完成。
如遇報(bào)錯(cuò)信息:
在 build.gradle 中添加
maven { url "http://maven.aliyun.com/nexus/content/groups/public"}其目的就是為了換成國(guó)內(nèi)的鏡像(init.gradle 有時(shí)沒(méi)有生效)
編譯時(shí)報(bào)錯(cuò)如下:
原因是 gradle 和 gradle 插件版本過(guò)舊,更換更高的版本可以解決,但這個(gè)問(wèn)題只是提示,不影響編譯。
在 test 包中隨便找了一個(gè)單元測(cè)試運(yùn)行,成功運(yùn)行
以上就是今天的全部?jī)?nèi)容了。
名稱欄目:開(kāi)工:Spring完美導(dǎo)入IDEA
網(wǎng)站URL:http://fisionsoft.com.cn/article/dpispje.html


咨詢
建站咨詢
