參考鏈接:
《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:\Users\Administrator\.gradle\caches\modules-2\files-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’