Spring5源码分析(1)----spring源码编译
2021/9/12 1:05:05
本文主要是介绍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中
这篇关于Spring5源码分析(1)----spring源码编译的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?