Spring源码-阅读环境搭建


前言

阅读源码的益处不再多谈,此篇记录本人如何完成Spring源码阅读环境的搭建,主要是源码编译,此篇只做参考

环境如下:

  • win10
  • idea2020.1
  • spring-framework5.2.x
  • gradle5.6.4
  • jdk8

一、下载spring源码

Github上搜索spring-framework下载源码,操作如下图
在这里插入图片描述
clone到本地,网速随各位客官所处网络环境有关
在这里插入图片描述
切换到所需分支,以5.2.x分支为例。

# PS:记得先进入spring-framework文件夹
cd spring-framework/

#  查看当前git状态
git status

# 切换远程分支
git checkout origin/5.2.x

在这里插入图片描述

二、Gradle下载与配置

由于众所周知的“网络”问题,我们先预先下载gradle,不然会陷入无尽的痛苦之中(超时等网络问题)

下载安装

gradle-5.6.4-bin.zip

配置环境变量(不附图了)

配置以下变量
GRADLE_HOME  E:\gradle-5.6.4
GRADLE_USER_HOME  D:\gradle-repository
Path %GRADLE_HOME%\bin;

测试

在这里插入图片描述

三、spring-framework相关配置文件修改

主要是做阿里云镜像的添加,解决下载慢、失败等问题

1. gradle-wrapper.properties编辑

# 文件位置:spring-framework\gradle\wrapper

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
# 注释原来的,不改的话每次运行都会去这个地址下载,由于网络原因会有困扰
# distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-bin.zip
# 改成如下所示
distributionUrl=file\:/E:/gradle-5.6.4-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

2. settings.gradle编辑

# 文件位置:根目录

# pluginManagement部分改前
pluginManagement {
	repositories {
		gradlePluginPortal()
		maven { url 'https://repo.spring.io/plugins-release' }
	}
}

# pluginManagement部分改后,添加了阿里镜像
pluginManagement {
	repositories {
		maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
		maven { url 'https://maven.aliyun.com/repository/spring-plugin' }
		gradlePluginPortal()
		maven { url 'https://repo.spring.io/plugins-release' }
	}
}

3. build.gradle编辑

# 文件位置:根目录
# 修改位置 repositories,差不多280# 改前:
repositories {
	mavenCentral()
	maven { url "https://repo.spring.io/libs-spring-framework-build" }
}

# 改后: 加了阿里云镜像
repositories {
	maven { url "http://maven.aliyun.com/nexus/content/groups/public"}
	mavenCentral()
	maven { url "https://repo.spring.io/libs-spring-framework-build" }
}

注释下图这一行,不注释我编译时会卡在这一插件的下载(初探spring源码,不确定注释会对后续有什么影响,此篇目的为编译通过,并用idea打开方便阅读)
在这里插入图片描述

四、开始编译

运行根目录的gradlew.bat,成功截图如下:
在这里插入图片描述
导入到idea前,还需有些事情要完成,参考根目录中的import-into-idea.md说明
在这里插入图片描述
预编译spring-oxm,成功如下图:
在这里插入图片描述

导入到IDEA

按照如下图指示导入:
在这里插入图片描述

最终效果

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值