Spring源碼完美導(dǎo)入IDEA的過(guò)程
小伙伴私信我說(shuō)想要研究下Spring的源碼,想讓我出一期教程來(lái)實(shí)現(xiàn)IDEA導(dǎo)入Spring源碼,今天它來(lái)了~
版本 :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)容了。
到此這篇關(guān)于Spring源碼 完美導(dǎo)入 IDEA的過(guò)程的文章就介紹到這了,更多相關(guān)Spring導(dǎo)入 IDEA內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java人機(jī)猜拳實(shí)現(xiàn)的思路及方法實(shí)例
這篇文章主要給大家介紹了關(guān)于Java人機(jī)猜拳實(shí)現(xiàn)的思路及方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Java輕松實(shí)現(xiàn)批量插入或刪除Excel行列操作
在職場(chǎng)生活中,對(duì)Excel工作表的行和列進(jìn)行操作是非常普遍的需求,下面小編就來(lái)和大家介紹一下如何在Java中完成批量插入、刪除行和列的操作吧2023-10-10springboot寶塔簡(jiǎn)單部署的實(shí)現(xiàn)示例
通過(guò)使用Spring Boot,可以快速構(gòu)建出高效、可擴(kuò)展的應(yīng)用程序,而寶塔面板則提供了簡(jiǎn)單易用的網(wǎng)站管理和維護(hù)工具,本文將詳細(xì)介紹如何將Spring Boot應(yīng)用程序與寶塔面板進(jìn)行集成,實(shí)現(xiàn)自動(dòng)化部署、配置管理等操作2023-11-11Spring Boot使用Redisson實(shí)現(xiàn)滑動(dòng)窗口限流的項(xiàng)目實(shí)踐
滑動(dòng)窗口限流是一種流量控制策略,用于控制在一定時(shí)間內(nèi)的請(qǐng)求頻率,本文主要介紹了Spring Boot使用Redisson實(shí)現(xiàn)滑動(dòng)窗口限流的項(xiàng)目實(shí)踐,具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03