Spring5源码分析(1)----spring源码编译

1.下载Spring源码

GitHub Spring源码下载链接: https://github.com/spring-projects/spring-framework.
注意:下载的时候选择branch和对应的tag,下载RELEASE版本的,这种是正式版,稳定性更好,M1,M2,…中的M是milestone的意思,意思是里程碑,代表着有重大改进的版本。用git克隆或者直接下载zip包,我一般都是用spring-framework-5.1.20.RELEASE。由于5.1.20版本的源码,我之前很早就编译过了,所以后面演示我用的spring-framework-5.2.10.RELEASE重新构建一遍。

2.构建工具gradle

安装源码对应的gradle版本(也可以不安装),建议使用gradleWrapper中的gradle。gradleWrapper在该文件中有体现,相当于远程自动下载,所以可以不下载gradle,采用远程的同一版本。
**文件路径:**F:\spring-framework-5.2.10.RELEASE\gradle\wrapper\gradle-wrapper.properties,如果下载gradle,最好和该文件中版本一致。

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

修改bulid.gradle文件
F:\spring-framework-5.2.10.RELEASE\build.gradle
添加阿里云镜像,减少因jar包下载不下来而导致的问题。

	repositories {
		<!--添加阿里云镜像-->
		maven{url 'http://maven.aliyun.com/nexus/content/groups/public/'}
		maven{url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
		mavenCentral()
		maven { url "https://repo.spring.io/libs-spring-framework-build" }
	}

3.编译源码

3.1 编译complieTestJava模块

打开源码所在文件夹,在window cmd命令中输入:

gradlew :spring-oxm:compileTestJava

编译报错:
Error resolving plugin [id: ‘io.spring.gradle-enterprise-conventions’, version: ‘0.0.2’]。如果出现下图所示的错误,则修改bulid.gradle文件。
在这里插入图片描述
首先,将第三行中的id ‘io.spring.gradle-enterprise-conventions’ version '0.0.2’注释掉,然后修改mavenBom中的依赖版本,如下图所示。

	//id 'io.spring.gradle-enterprise-conventions' version '0.0.2'
	mavenBom "io.netty:netty-bom:4.1.39.Final" //原先是4.1.51
	mavenBom "io.projectreactor:reactor-bom:Dysprosium-SR9" //原先是SR13

修改完后,重新编译,构建成功。
在这里插入图片描述

3.2 导入项目到idea中

3.3 创建gradle项目

创建一个gradle模块,在新建模块下的build.gradle中添加如下依赖:

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
    compile(project(":spring-beans"))
    compile(project(":spring-core"))
    optional(project(":spring-aop"))
    optional(project(":spring-context"))
}
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值