资料参考地址1:
Spring源码编译
准备环境
- 配置JDK8(与Spring5的兼容性最好)
- spring : 5.2.0 release
下载Spring源码
直接去官方的github库下载,
https://github.com/spring-projects/spring-framework
打开github后,点击下方的标签tag,强烈建议大家选择和教程一样的稳定的5.2.0 release版本,
或则大家也可以在我们的代码库把Spring源码直接拉下来。由于咱们不需要提交Spring代码,因此可以直接使用https的方式将代码的zip包下载到本地,避免了git拷贝时的龟速。
下载完成后,将Spring源码解压到自定义的路径里。
编译源码
使用Gradle来预编译spring-oxm
Gradle是个构建系统,能够简化你的编译、打包、测试过程。熟悉Java的同学,可以把Gradle类比成Maven。
Gradle的子项目工具Gradle Wrapper的作用就是简化Gradle本身的安装、部署。不同版本的项目可能需要不同版本的Gradle,手工部署的话比较麻烦,而且可能产生冲突,所以需要Gradle Wrapper帮你搞定这些事情。
去到解压的spring源码目录下,就会看到Spring已经自带了gradlew.bat这个Gradle Wrapper脚本文件。
为了使得GradleWrapper更快连接服务器,可以修改其镜像
在首行即plugins上方,buildscript里面加入
repositories {
maven{ url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven{ url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'}
}
在 resolutionStrategy的下方,configurations.all的上方加入
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" }
}
进入到源码的根目录在地址栏中输入cmd,进入到控制台
之后执行指令预编译Spring源码等待编译完成(耗时几十分钟),多数情况下的报错是因为超时引起的,只能不断重试,如果期间报错,则需要将错误贴到百度或者谷歌上解决,提前锻炼下解决问题的能力。因为咱们之间的环境不同,所以有可能遇到的异常也不同。
gradlew.bat :spring-oxm:compileTestJava
编译成功
idea通过open方式打开
标签:Spring,Gradle,maven,编译,源码,https,spring From: https://www.cnblogs.com/lyn8100/p/16981814.html