Spring6.0.0源码阅读环境搭建-gradle构建编译

背景:Spring系列生态十分丰富,也是Java后代开发需要了解的内容。理解Spring的设计原理,就需要深度研读Spring源码。
  在构建Spring源码阅读环境的过程中参考了网站众多文章,针对不同版本有不同的问题,经多次尝试,慢慢找到了正确的构建编译方式,下面就记录下 Spring源码阅读环境的构建编译完整过程 。

准备工作

Spring下载源码

https://github.com/spring-projects/spring-framework 版本选择6.0.0可以直接下载zip包或者clone相关分支,本次编译采用直接下载zip包的形式。

gradle下载

https://gradle.org/releases/ 根据gradle/wrapper/gradle-wrapper.properties文件的配置下载对应版本的gradle,本次编译使用的是7.5.1。

gradle环境配置

gradle环境配置网上有许多类的教程。

    将gradle压缩包进行解压。 设置环境变量 验证

创建idea阅读环境

导入工程

使用Idea打开解压后的spring6.0.0源码文件,默认工程导入后就会进行编译,但有些依赖下载时间比较长,建议先暂停编译并替换国内数据源。

配置gradle

    Idea配置gradle 配置gradle编译 Gradle user home 选择gradle安装地址 Gradle JVM选择jdk安装地址 Idea配置Project Settings Project中SDK选择安装的jdk版本 gradle-wrapper.properties修改 将distributionUrld地址替换为本地gradle下载 build.gradle文件修改 maven添加国内镜像
repositories {
		maven { url "https://maven.aliyun.com/repository/central" }
		mavenCentral()
		maven {
			url "https://repo.spring.io/milestone"
			content {
				// Netty 5 optional support
				includeGroup io.projectreactor.netty
			}
		}
		maven { url "https://repo.spring.io/libs-spring-framework-build" }
		if (version.contains(-)) {
			maven { url "https://repo.spring.io/milestone" }
		}
		if (version.endsWith(-SNAPSHOT)) {
			maven { url "https://repo.spring.io/snapshot" }
		}
	}
    setting.gradle文件修改 替换国内镜像
repositories {
		maven {
			url https://maven.aliyun.com/repository/public
		}
		maven {
			url "https://maven.aliyun.com/repository/google"
		}
		maven { url "https://maven.aliyun.com/repository/gradle-plugin/" }

		gradlePluginPortal()
		google()
		mavenCentral()
	}

注释掉id “io.spring.ge.conventions” version “0.0.11”

plugins {
	id "com.gradle.enterprise" version "3.11.1"
	//id "io.spring.ge.conventions" version "0.0.11"
}

编译

使用Idea集成的Gradle进行Reload

编译完成

通过下载相关依赖,完成整个build过程

经验分享 程序员 微信小程序 职场和发展