Spring源码下载和编译
前置准备
需要IDEA,JDK 1.8.20 以上。
下载源码
这里我们选择4.3.x
版本。地址:github - spring-framework 4.3.x
使用git clone -b 4.3.x https://github.com/spring-projects/spring-framework.git
来下载这个版本。
下载完大约有453mb(如果下载缓慢,可以安装 dev-sidecar加速)。
下载Gradle构建工具
地址: Gradle 4.10.2。
这个版本最好和源码\spring-framework\gradle\wrapper\gradle-wrapper.properties
内的一致。进入官网后点击4.10.2
版本下的binary-only
即可。下载后解压zip包。
修改distributionUrl
打开 spring-framework\gradle\wrapper\gradle-wrapper.properties
文件,注释掉distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-bin.zip
,在下方新增一行:distributionUrl=gradle-4.10.2-bin.zip
。并把刚才下载的gradle-4.10.2-bin.zip复制到该目录下。
配置环境变量及仓库地址:
- 变量名:
GRADLE_HOME
,值:输入刚才解压后的路径。如D:\0.devEnv\gradle-4.10.2
。 - 变量名:
GRADLE_USER_HOME
,值:输入本地jar包存放路径即可。如D:\0.devEnv\gradle-repo
。 - 然后在
path环境变量
内加一条:%GRADLE_HOME%\bin
。
验证。打开cmd命令行输入 gradle -v
。显示版本则表示配置成功。
配置阿里云镜像:
在gradle中的init.d文件夹中(如D:\0.devEnv\gradle-4.10.2\init.d\
)新建一个init.gradle文件,并在文件中添加如下配置
allprojects {
repositories {
maven { url 'https://maven.aliyun.com/repository/public/' }
mavenLocal()
mavenCentral()
}
}
修改spring源码内gradle的镜像地址
修改\spring-framework\build.gradle
文件内gradle的镜像地址。大约在132行,如下方代码所示,在repositories
内,mavenCentral()
前增加两行配置。
repositories {
maven{ url 'https://maven.aliyun.com/nexus/content/groups/public/'}
maven{ url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'}
mavenCentral()
maven { url "https://repo.spring.io/libs-spring-framework-build" }
}
编译compileTestJava模块
打开源码所在文件夹,在搜索栏输入 cmd 命令,跳转到所在目录的命令行窗口,在当前目录的命令行窗口输入:
gradlew :spring-oxm:compileTestJava
稍等片刻即可编译成功。
导入项目到IDEA
使用Idea (File -> New -> Project from Existing Sources) ,选择\spring-framework
目录下的build.gradle
文件,确认。接下来就是漫长的build了。这个过程中会下载相关的依赖包,大约1.9GB
。时长主要取决于网速和本地磁盘性能。
最终,在IDEA的console里看到BUILD SUCCESSFUL
,且IDEA没有正在运行的后台任务,表示导入成功。
测试
打开spring-test
模块,src/test/java
目录下,随便找一个@Test
方法运行,查看结果是否正常。
- 0很棒
- 0不错
- 0一般
- 0???