每个人环境可能不太一样,如有问题欢迎在下方留言
  • 环境
IDEA版本:IntelliJ IDEA 2019.3.4 x64
操作系统:WIndow10
Java版本:1.8.0_201
构建工具:IDEA内置Gradle
Spring Framework版本:5.3.0-SNAPSHOT

  • 源码下载
源码位于git上,自行下载 https://github.com/spring-projects/spring-framework,我这里用的master版本(5.3.0-SNAPSHOT),spring Framework项目包含了多个module,如下图
  • 导入IDEA
1、先配置gradle的仓库为阿里云的,不然导入spring源码后build时的各种连接超时、异常会让你崩溃
配置文件默认位于C:\Users\【自己的用户名】\.gradle\init.gradle,里面添加如下仓库配置
allprojects{
    repositories {
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
        maven { url 'https://maven.aliyun.com/repository/google' }
        maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
        maven { url 'https://maven.aliyun.com/repository/jcenter'}
    }
}
2、导入工程到IDEA
依次File - Open - 选择spring项目路径 - 选择导入方式为gradle ,导入项目,等待系统自动导入完成

  • 编译
导入工程后,在idea的右侧Gradle模块,可以看到整个项目的模块,先编译spring-jcl,再双击下图中的build,完成整个工程的构建
  • 测试
1、右键spring-framework工程,选择new module,选择gradle,添加用来测试的模块
2、修改新建模块的build.gradle文件,添加spring-core、spring-aop等到新建模块的依赖中

3、代码测试,基于注解的方式加载spring上下文,后去扫描package下面的bean并简单打印
  • 可能存在的问题
1、编译spring-messaging的时候出现警告,并报错,原因是指定了-Werror,遇到警告会当做错误处理
\ReactorNettyTcpConnection.java:20: 警告: [deprecation] reactor.core.publisher中的DirectProcessor已过时
import reactor.core.publisher.DirectProcessor;
                             ^
错误: 发现警告, 但指定了 -Werror
解决方法:
修改文件src\main\java\org\springframework\build\compile\CompilerConventionsPlugin.java,如下,将-Werror屏蔽掉即可
COMPILER_ARGS.addAll(Arrays.asList(
      "-Xlint:varargs", "-Xlint:fallthrough", "-Xlint:rawtypes", "-Xlint:deprecation",
      "-Xlint:unchecked" //, "-Werror"
屏蔽后重新编译,依然会有警告,但是不会当做错误处理,能正常编译完
.java:35: 警告: [deprecation] reactor.core.publisher中的DirectProcessor已过时
import reactor.core.publisher.DirectProcessor;
                             ^

Spring源码环境搭建相关推荐

  1. 本地搭建Spring源码环境

    本地搭建Spring源码环境 一.安装gradle 第一种方式 第二种方式 二.下载Spring源码 一.下载地址 二.导入idea 三.配置idea 四.新建测试工程 三.最后 附:git地址 声明 ...

  2. spring boot 源码_SpringBoot2.1.x源码环境搭建详解

    前言 笔者试着从GitHub上拉取SpringBoot源码.然鹅,在本地IDEA打开后,爆各种编译错误,各种问题.经过反复操作,现在总结一下SpringBoot源码环境搭建的实践,便于后期对于源码的学 ...

  3. datax源码环境搭建

    文章目录 datax源码环境搭建 写在前面 环境 下载源码并编译 错误1 错误2 运行 生产模式 debug模式 datax源码环境搭建 写在前面 DataX 是阿里巴巴集团内被广泛使用的离线数据同步 ...

  4. zookeeper3.5.4源码环境搭建

    zookeeper3.5.4源码环境搭建 1. 准备工作 渠道 地址 网盘 zk源码下载地址 提取码:5555 注意:因为zookeeper是由ant来构建的,所以需要使用ant命令来转换成工程,然后 ...

  5. idea构建spring源码环境

    前言 最近抽空在摸索spring源码,就想在idea中把spring源码环境给跑起来,以便于自己进行断点调试和学习,但在自己构建的时候才发现使用idea构建spring源码的环境的确不是一件简单简单的 ...

  6. Android源码环境搭建(aosp Ubuntu 16.04)

    Android源码环境搭建(aosp Ubuntu 16.04) FrameWork入门课视频链接:https://edu.csdn.net/course/detail/30298 FrameWork ...

  7. Kafka源码环境搭建

    欢迎支持笔者新作:<深入理解Kafka:核心设计与实践原理>和<RabbitMQ实战指南>,同时欢迎关注笔者的微信公众号:朱小厮的博客. 欢迎跳转到本文的原文链接:https: ...

  8. ZooKeeper源码阅读心得分享+源码基本结构+源码环境搭建

    首发CSDN:徐同学呀,原创不易,转载请注明源链接.我是徐同学,用心输出高质量文章,希望对你有所帮助. 一.心得分享 如何阅读ZooKeeper源码?从哪里开始阅读?最近把ZooKeeper源码看了个 ...

  9. win10环境下的spark2.4源码环境搭建

    spark2.4源码环境搭建 1.概述 2.版本信息及环境 3.基础环境准备 4.源码准备 5.IDEA设置 5.1 IDEA内maven插件设置与更新 5.2 IDEA内导入spark各个模块 6. ...

最新文章

  1. 『高级篇』docker之APIGateway(17)
  2. 在Spring MVC中使用Apache Shiro安全框架
  3. Python dict dictionaries Python 数据结构——字典
  4. android.content.Context.getResources()‘ on a null object reference
  5. LeetCode 698. 划分为k个相等的子集(回溯)
  6. c ++向量库_将向量复制到C ++中的另一个向量
  7. C语言 strlen函数实现
  8. 基于javaweb+jsp+mysql的美容院管理系统
  9. vue在html中写style,vue开发之style(六)(CSS页面布局之样式、背景、文字)
  10. 从零基础入门Tensorflow2.0 ----九、44.1 keras 保存模型、参数
  11. 微pe工具箱 系统安装教程_通用PE工具箱装系统(V4.0)——安装原版XP系统
  12. 如何屏蔽油管网页上的广告
  13. 应用商店优化(ASO)之关键词及描述优化
  14. ceph pg peering和恢复 (1)
  15. java正则匹配以什么开始的_正则匹配 符合以什么开头以什么结尾的
  16. 学计算机编程难吗,编程真的很难吗?为什么会认为学编程难?
  17. cern ROOT 读取TXT文件数据并画一个简单的直方图
  18. 分类中常见的类别不平衡问题解决方法
  19. bzoj1911【APIO2010】特别行动队
  20. 软件架构设计与需求分析方法论

热门文章

  1. Winmail 邮件服务器的「架设与使用」
  2. 前端数据库indexedDB入门
  3. 关系图谱---西方(上帝、耶和华、耶稣、圣母玛利亚、亚当、夏娃)and 东方(盘古、伏羲、女娲、炎帝、黄帝)
  4. NFT数藏系统NFT数字臧品系统整体解决方案
  5. 主流相机RTSP地址格式
  6. Android中EditText控件的Ime Options属性
  7. R3 2200G搭配显卡推荐
  8. stm32【RGB_LED_WS2812灯珠】
  9. 一文读懂 S7-1500 手册 - 关于常用资源的介绍
  10. Led护眼灯真的有效果吗?2022双十一最值得入手护眼台灯推荐