参考链接:
《spring源码系列(六)——番外篇如何编译spring的源码》:https://blog.csdn.net/bskfnvjtlyzmv867/article/details/81171802
《Spring源码——IDEA读Spring源码环境搭建》:https://blog.csdn.net/java_lyvee/article/details/107300648
一、物料准备
1、Gradle 版本:4.9
下载地址:https://services.gradle.org/distributions/
2、Spring 源码版本:5.0.7.RELEASE
下载地址:https://github.com/spring-projects/spring-framework/
gradle的包下载解压后的地址:C:UsersAdministrator.gradlecachesmodules-2files-2.1
二、开始编译
进入到源码目录,运行 gradlew :spring-oxm:compileTestJava
三、导入Idea
http://note.youdao.com/ynoteshare1/index.html?id=c3f11aab5e0a0083709cc64984a3c41a&type=note
https://my.oschina.net/u/4370441/blog/4816183
1、cd 进入spring-framework代码目录
2、修改sesstings.gradle 设置阿里云仓库地址
pluginManagement {
repositories {
gradlePluginPortal()
maven { url 'https://maven.aliyun.com/repository/public' }
maven { url 'https://repo.spring.io/plugins-release' }
}
}
3、修改build.gradle依然添加阿里云仓库地址
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" }
}
4、修改gradle.properties,调大JVM参数
version=5.3.3-SNAPSHOT
org.gradle.jvmargs=-Xmx2048M
org.gradle.caching=true
org.gradle.parallel=true
kotlin.stdlib.default.dependency=false
四、问题
1、问题描述:
A problem occurred evaluating project ':spring-beans'.
> No such property: values for class: org.gradle.api.internal.tasks.DefaultTaskDependency
Possible solutions: values
点击:Open File 然后注释掉
//compileGroovy.dependsOn = compileGroovy.taskDependencies.values - ‘compileJava’