热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[由零开始]2020年最新如何在Idea中编译构建Springframework5.1.x的源码

构建Spring-framework-5.1.x的源码第一步:首先前往世界上最大的同性交友网站gayHab上去下载spring源码:下载地址ÿ

构建Spring-framework-5.1.x 的源码

第一步:

         首先前往世界上最大的同性交友网站gayHab上去下载spring源码:

         下载地址:https://github.com/spring-projects/spring-framework 这里我选择的branch是5.1.x

          download源码之后到本地,解压。

第二步: 

        1.安装gradle

        2.下载地址: https://services.gradle.org/distributions/ 这里我选择gradle的5.6.3版本

       download源码在本机的目录下直接解压即可,解压后的目录如下图所示。

      

       3.配置Gradle配置环境变量,右键“这台电脑”-->"属性"-->"高级系统设置"-->"环境变量"-->"系统变量",我们在系统变量中新增一个GRADLE_HOME值为解压后的路径,然后我们还需要修改Path变量,将Gradle的bin目录添加进去,我们在Path变量的最后面添加;%GRADLE_HOME%\bin,注意前面的分号(;)一定不能少。

       

        

 

         框中即为配置的gradle环境变量,一定要是bin目录。

         配置完成之后查看是否配置成功。执行命令:gradle --v 出现下图所示,则配置完成:

        

       以上就安装好gradle

第三步: 

       开始构建Spring-framework-5.1.x

      1.将源码导入idea,如下图

       

        

       

      

       

        1.1.导入源码过程有点耗时,大家可以把gradle的仓库切换成阿里云,找到Spring的源码的根目录,找到build.gradle文件编辑 如下图:

           

         1.2  修改下图标红地方为阿里云地址(我这边之前就下载了一次,所以就没修改,阿里云仓库地址找度娘)

           

           

           

 

 2.成功讲源码导入后,进行编译如下图(注意:要按照顺序编译:core-oxm-context-beans-aspects-aop)

3.成功编译完成,编写测试类

    

    

    

   

  

至此Spring源码就导入成功!

    以下是我构建Spring-framework-5.1.x常见的问题:

    问题一:

    

   解决:

   

  

问题二:

解决:

 

严格按照我上边的步骤的话,一般应该没有问题了

 

 

   


推荐阅读
  • 深入解析Nacos服务自动注册机制
    本文将探讨Nacos服务自动注册的具体实现方法,特别是如何通过Spring事件机制完成服务注册。通过对Nacos源码的详细分析,帮助读者理解其背后的原理。 ... [详细]
  • SpringBoot底层注解用法及原理
    2.1、组件添加1、Configuration基本使用Full模式与Lite模式示例最佳实战配置类组件之间无依赖关系用Lite模式加速容器启动过程,减少判断配置类组 ... [详细]
  • Maven + Spring + MyBatis + MySQL 环境搭建与实例解析
    本文详细介绍如何使用MySQL数据库进行环境搭建,包括创建数据库表并插入示例数据。随后,逐步指导如何配置Maven项目,整合Spring框架与MyBatis,实现高效的数据访问。 ... [详细]
  • 本文将深入探讨 Unreal Engine 4 (UE4) 中的距离场技术,包括其原理、实现细节以及在渲染中的应用。距离场技术在现代游戏引擎中用于提高光照和阴影的效果,尤其是在处理复杂几何形状时。文章将结合具体代码示例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 构建高性能Feed流系统的设计指南
    随着移动互联网的发展,Feed流系统成为了众多社交应用的核心组成部分。本文将深入探讨如何设计一个高效、稳定的Feed流系统,涵盖从基础架构到高级特性的各个方面。 ... [详细]
  • 本文详细解析了Java中流的概念,特别是OutputStream和InputStream的区别,并通过实际案例介绍了如何实现Java对象的序列化。文章不仅解释了流的基本概念,还探讨了序列化的重要性和具体实现步骤。 ... [详细]
  • GCC(GNU Compiler Collection)是GNU项目下的一款功能全面且高效的多平台编译工具,广泛应用于Linux操作系统中。本文将详细介绍GCC的特点及其基本使用方法。 ... [详细]
  • 本文探讨了一个Web工程项目的需求,即允许用户随时添加定时任务,并通过Quartz框架实现这些任务的自动化调度。文章将介绍如何设计任务表以存储任务信息和执行周期,以及如何通过一个定期扫描机制自动识别并加载新任务到调度系统中。 ... [详细]
  • 使用 ModelAttribute 实现页面数据自动填充
    本文介绍了如何利用 Spring MVC 中的 ModelAttribute 注解,在页面跳转后自动填充表单数据。主要探讨了两种实现方法及其背后的原理。 ... [详细]
  • Linux内核中的内存反碎片技术解析
    本文深入探讨了Linux内核中实现的内存反碎片技术,包括其历史发展、关键概念如虚拟可移动区域以及具体的内存碎片整理策略。旨在为开发者提供全面的技术理解。 ... [详细]
  • 页面预渲染适用于主要包含静态内容的页面。对于依赖大量API调用的动态页面,建议采用SSR(服务器端渲染),如Nuxt等框架。更多优化策略可参见:https://github.com/HaoChuan9421/vue-cli3-optimization ... [详细]
  • Java虚拟机及其发展历程
    Java虚拟机(JVM)是每个Java开发者日常工作中不可或缺的一部分,但其背后的运作机制却往往显得神秘莫测。本文将探讨Java及其虚拟机的发展历程,帮助读者深入了解这一关键技术。 ... [详细]
  • 本文探讨了如何在 Spring MVC 框架下,通过自定义注解和拦截器机制来实现细粒度的权限管理功能。 ... [详细]
  • Leetcode学习成长记:天池leetcode基础训练营Task01数组
    前言这是本人第一次参加由Datawhale举办的组队学习活动,这个活动每月一次,之前也一直关注,但未亲身参与过,这次看到活动 ... [详细]
  • 兆芯X86 CPU架构的演进与现状(国产CPU系列)
    本文详细介绍了兆芯X86 CPU架构的发展历程,从公司成立背景到关键技术授权,再到具体芯片架构的演进,全面解析了兆芯在国产CPU领域的贡献与挑战。 ... [详细]
author-avatar
Jes潔絲琳
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有