• 搭建Spring的源码环境


    搭建Spring的源码环境,包括以下几个步骤:

    1.从Spring官网一步步找到Spring源码在github上的位置,并拉取Spring源码

    2.安装和配置Gradle,用于构建Spring的源码

    3.将Spring源码导入到IDEA中,IDEA结合Gradle来构建Spring的源码

    从github拉取Spring的源码

    好了,在开始源码分析前,我们先搭建下Spring的源码环境,Spring源码目前是在github上托管的,我们通过链接:https://spring.io/projects/spring-framework,到spring官网看一下:

    通过点击图片右上角的猫头图标,我们可以定位到spring源码在github上的位置:

    Spring源码默认是位于main分支上的,本次专栏采用的是v5.2.6.RELEASE这个版本的代码,所以,大家可以先切换到分支5.2.x:

    然后基于分支5.2.x再切换到v5.2.6.RELEASE这个tag上:

    然后,我们可以下载这个tag下对应的Spring源码ZIP包:

     

     或者,大家可以像我一样,直接在本地的git上拉取spring的源码:

     git的搭建这里就不赘述了,大家可以网上找些资料,不过,由于Spring源码是在国外,下载的速度可能会慢一点。

    当我们成功从github拉取源码到本地之后,再通过checkout命令,切换到v5.2.6.RELEASE这个tag中:

     

    到现在为止,Spring源码我们已经准备好了,但是,因为Spring源码的构建并不是通过Maven来构建的,而是在国外比较受欢迎的Gradle,所以,接下来我们还得要在本地安装一下Gradle以便构建Spring源码。

    Gradle的下载和环境配置

    我们可以通过链接 https://gradle.org/releases/ ,到Gradle官网看下:

    我们选择下载v6.5这个版本,然后在解压到本地目录中:

     

     然后,我们还需要在电脑中配置下Gradle的环境变量,并将Gradle的bin目录添加到Path路径中:

     接着,我们打开命令窗口,输入命令“gradle -version”再回车,如果看到如下图一样的Gradle版本信息,就说明Gradle在本地安装成功了:

    将Spring源码导入IDEA中

    接下来,我们可以准备将下载好的Spring源码导入IDEA中了,导入IDEA之前,我们需要修改一下Spring源码中,关于构建Gradle的一些配置,方便后续Spring源码的构建。

    我们在spring-framework源码目录下,可以找到gradle.properties、settings.gradle和build.gradle这三个配置文件,我们需要调整下这些配置的参数,方便Gradle编译Spring源码。

    其中,gradle.properties配置文件调整后如下:

    version=5.2.6.RELEASE
    ## Gradle编译时,会下载很多东西,占用内存较大,建议适当调大点
    org.gradle.jvmargs=-Xmx2048M
    ## 开启Gradle的缓存
    org.gradle.caching=true
    ## 开启Gradle并行编译
    org.gradle.parallel=true
    ## 开启Gradle守护进程模式
    org.gradle.daemon=true

    而在settings.gradle配置文件中的repositories配置项,需要再添加阿里云的仓库地址:

    1

    maven { url "https://maven.aliyun.com/repository/public" }

    这样可以加快Gradle构建Spring源码的速度:

    而在build.gradle配置文件中的repositores配置项中,也需要添加阿里云仓库的配置:

    1

    2

    maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }

    maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'}

    同时,我们需要注释以下的配置,因为在Gradle构建v5.2.6.RELEASE版本的Spring源码时,相应的jar包可能下载不到了,如果不注释掉的话可能会导致Gradle构建失败,这个坑大家需要注意下:

     最后,我们只需要将spring源码导入到IDEA中即可,Gradle默认就会启动后台的进程来构建Spring源码了,如下图所示:

     

  • 相关阅读:
    电脑启动项设置,这些常识要记好!
    【软件测试】测试人终将迎来末路?测试人的我35岁就坐等失业?
    (高阶)Redis 7 第13讲 数据双写一致性 canal篇
    pip简单介绍
    PHP火狼大灌篮游戏源码微信+手机wap源码带控制
    Java的基础应用
    LeetCode 725. Split Linked List in Parts【链表】中等
    gazebo中vins-fusion在仿真小车上的部署
    leetcode.2401. 最长优雅子数组
    Redis集群原理与容器化部署集群
  • 原文地址:https://blog.csdn.net/weixin_42696130/article/details/128166263