美文网首页
002-【Spring】源码编译

002-【Spring】源码编译

作者: 糖纸疯了 | 来源:发表于2022-02-18 22:48 被阅读0次

Spring源码编译

1、理解编译过程

  • 1)Spring源码依赖gradle进行编译
  • 2)不同版本的Spring依赖的gradle版本不一样,但是同一台电脑可以同时安装多个gradle

使用不同的gradle,要修改对应的环境变量对应的地址

  • 3)要修改源码中的仓库地址和JVM内存才能完成编译
0)成功版安装参考[V5.0版本]:https://www.jianshu.com/p/02f17909e2d6
1)添加gradle仓库,不要删除原来的仓库
2)将build.gradle和gradlew可执行文件中的参数配置调到1024->2048
3)先执行gradle
4)再根据import-into-idea.md中去执行对应的命令
5)Spring版本说明:V5.0版本的时候在build.gradle指明了gradle的版本,本地的gradle版本要保持一致
6)在Spring5.1版本中就没有指定版本了,如果Gradle的版本太高,Gradle中的Kotlin版本也会受到影响

2、代码修改

  • 1)代码拉取
git clone https://gitee.com/Z201/spring-framework.git -b 5.2.x
  • 2)修改文件

一定要先找到这些文件进行修改,然后执行./gradlew :spring-oxm:compileTestJava命令(import-into-idea.md)文件中的要求进行顺序执行

  • 3)修改文件-gradle-wrapper.properties
搜索关键字:distributionUrl=file:///Applications/0ENZO/Installs/gradle/gradle-5.6.4-bin.zip
  • 4)修改文件-build.gradle

【取消插件】+【添加国内仓库】

搜索关键字1:io.spring.gradle-enterprise-conventions
搜索关键字2: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" }
        }
  • 5)修改文件-build.properties
version=5.2.9.BUILD-SNAPSHOT
#新增如下配置,解决heap堆内存空间不够问题
org.gradle.jvmargs=-Xms2048m -Xmx4096m 
org.gradle.caching=true
org.gradle.parallel=true
gradlePropertiesProp=gradlePropertiesValue
sysProp=shouldBeOverWrittenBySysProp
systemProp.system=systemValue
org.gradle.daemon=true
org.gradle.configureondemand=true
  • 6)修改文件-gradlew
搜索关键字:DEFAULT_JVM_OPTS='"-Xmx1024m" "-Xms1024m"'

3、执行脚本

修改上面的配置之后,gradle因为已经配置了新的运行内存,gradle本地安装路径,国内镜像仓库等,使用IDEA打开就可以正常的添加依赖了(可以使用CMD或者IDEA控制台)

./gradlew :spring-oxm:compileTestJava

4、创建模块验证Spring源码编译

  • 1)创建module
  • 2)选择gradle模块
  • 3)填写模块名
  • 4)添加context依赖
compile(project(":spring-context"))
  • 5)添加测试内容

参考git地址:https://gitee.com/enzoism/spring-frame-work-5.2.9/tree/master/a-spring-test

  • 6)测试结果

相关文章

  • 002-【Spring】源码编译

    Spring源码编译 1、理解编译过程 1)Spring源码依赖gradle进行编译 2)不同版本的Spring依...

  • 探秘 Spring 的 PropertyEditor

    Spring 源码系列Spring 整体架构编译Spring5.2.0源码Spring-AliasRegistry...

  • Spring源码编译

    Spring源码编译调试 学习Spring源码首先要本地下载源码后编译通过才能调试Spring,本文章主要介绍Sp...

  • 狂撸Spring源码(一),剑指高级架构

    一、Spring源码下载编译 学习Spring源码之前,首先我们需要到GITHUB上下载Spring源码:imag...

  • 编译Spring

    编译Spring 为了深入了解Spring-Framework,阅读项目源码,第一步是编译源码。 代码地址如下 h...

  • Spring FactoryBean 缓存

    相关文章 Spring 整体架构 编译Spring5.2.0源码 Spring-资源加载 Spring 容器的初始...

  • gradle编译spring3.2源码

    最近在看spring源码深度解释这本书,书上需要下载和自己手动编译源码,在此记录一下自己的流程。编译spring源...

  • spring源码编译

    编译spring5.x版本的源码1.下载spring源码打开同性交友网站搜索spring-framework选择分...

  • spring 5.3.2 源码编译

    jdk.jfr , CoroutinesUtils jdk下载 编译前准备 源码下载 Spring 源码下载可以去...

  • spring源码阅读-环境搭建【01】

    《spring-framework源码阅读001》 源码下载编译步骤 一、下载源码 github下载速度慢,需要v...

网友评论

      本文标题:002-【Spring】源码编译

      本文链接:https://www.haomeiwen.com/subject/tjculrtx.html