学习spring源码的第一步便是需要去编译源码;很多网友在编译spring源码的时候遇到了困难继而放弃了spring源码的学习;
这篇文章主要来阐述如何正确的编译spring源码;首先你得检查你的网线能正常上网;最好网速还行;不然你会疯掉
1、下载gradle,下载完之后就是环境变量的配置这里我就不多说了,我这里下载是6.5.1
gradle官方下载地址:https://gradle.org/releases/
2、当gradle环境具备后需要下载spring-framework源码
源码可以选择github或者码云;版本你自己选择,作者这里下载的是:5.1.x版本的
3、当下载完后使用IDEA打开源码
Gradle VM options :-XX:MaxPermSize=2048m -Xmx2048m -XX:MaxHeapSize=2048m
之后就到这个界面,下面我们需要对源码进行编译
第一
找到gradle--->wrapper--->gradle-wrapper.properties 双击这个文件可以看到原文件内容是
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.3-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
将里面原有的distributionUrl替换成自己下载的gradle地址
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
#distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.3-bin.zip
distributionUrl=file\:///d\:/apps/gradle/gradle-6.5.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
第二
找到build.gradle 双击打开该文件
找到150的repositories,替换为下面的
repositories {
mavenCentral()
maven { url "https://repo.spring.io/libs-spring-framework-build" }
maven { url "https://repo.spring.io/snapshot" } // Reactor
maven {url 'https://maven.aliyun.com/nexus/content/groups/public/'} //阿里云
maven {url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'}
}
在build.gradle文件里找到kotlin的信息并修改
找到135行左右将这行注释掉。
刷新gradle
剩下的就是漫长的等待了,如果一次不成功,就多刷新几次。
可以看到作者的网络并不快,二十多分钟还没完成,其实作者上次编译源码用了两个半小时,如果你们网络够快的话二十分钟左右应该就能编译完成。
好了,作者这里就不在等待了。源码编译就结束了。