编译Spring5.2.0源码
下载 spring-framework-5.2.0.RELEASE.zip
https://github.com/spring-projects/spring-framework/releases
下载gradle 5.6.3 按照说明配置环境变量
https://gradle.org/install/
解压zip、查看根目录下的 import-into-idea.md
执行脚本 (windows 系统)
.\gradlew.bat :spring-oxm:compileTestJava
成功之后、使用IDEA打开
成功打开项目之后,我们将 spring-aspects 模块unload
然后我们可以新建一个我们自己使用的模块
打开 project structuer
然后我们为这个新建的模块引入一些我们需要用到的 Spring 的一些 jar 包
在我们的新模块中使用 Spring 的时候、可能会出现下面的问题
java: cannot find symbol
symbol: variable CoroutinesUtils
location: class org.springframework.core.ReactiveAdapterRegistry.CoroutinesRegistrar
Error:(348, 51) java: cannot find symbol
symbol: variable CoroutinesUtils
location: class org.springframework.core.ReactiveAdapterRegistry.CoroutinesRegistrar
解决办法
把这个 spring-core/kotlin-coroutines/build/libs/kotlin-coroutines-5.2.0.RELEASE.jar
引入到项目中即可
第二个可能出现的问题
Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/cglib/core/NamingPolicy
将 spring core 中的 build/lib
的 spring-cglib-repack-3.3.0.jar
和 spring-objenesis-repack-3.0.1.jar
引入到新增的模块中
到此为止我们就能够在新建的模块中正常的使用 Spring 了
编译Spring5.2.0源码的更多相关文章
- 编译hadoop2.2.0源码时报错
编译hadoop2.2.0源码时, mvn install -DskipTests 报错: [ERROR] COMPILATION ERROR : [INFO] ------------------- ...
- [Android 编译(一)] Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程
本文转载自:[Android 编译(一)] Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程 1 前言 经过3天奋战,终于在Ubuntu 16.04上把Android 6. ...
- Spring源码学习01:IntelliJ IDEA2019.3编译Spring5.3.x源码
目录 Spring源码学习01:IntelliJ IDEA2019.3编译Spring5.3.x源码 前言 工欲善其事必先利其器.学习和深读Spring源码一个重要的前提:编译源码到我们的本地环境.这 ...
- Spring源码解析 | 第一篇 :IntelliJ IDEA2019.3编译Spring5.3.x源码
前言 工欲善其事必先利其器.学习和深读Spring源码一个重要的前提:编译源码到我们的本地环境.这样方便我们在本地环境添加注释.断点追踪.查看类或接口的继承关系等等,更加高效的学习Spring源码.个 ...
- VS2015编译TIFF3.8.0源码
没有CMakeLists.txt,不能使用CMake GUI了.源文件中有makefile.vc,所以使用nmake 进入VS2015命令行 nmake -f makefile.vc 修改nmake. ...
- VS2015编译CURL7.54.0源码
2018.8.24找到一种新途径,运行curl-master\projects\generate.bat,然后curl-master\projects\Windows\VC14\curl-all.sl ...
- Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程
sudo apt-get install -y git flex bison gperf build-essential libncurses5-dev:i386 \ libx11-dev:i386 ...
- 编译安卓7.0源码出现make: *** [ninja_wrapper] Error 1【转】
本文转载自:https://blog.csdn.net/u010684585/article/details/76263317 32 warnings generated.ninja: build s ...
- Mac上编译并运行Android5.0源码
下载.配置环境.build和运行参考的都是Android Source提供的文档,包括:Initializing a Build Environment,Downloading the Source和 ...
随机推荐
- Java实现 LeetCode 519 随机翻转矩阵
519. 随机翻转矩阵 题中给出一个 n 行 n 列的二维矩阵 (n_rows,n_cols),且所有值被初始化为 0.要求编写一个 flip 函数,均匀随机的将矩阵中的 0 变为 1,并返回该值的位 ...
- Java实现 LeetCode 502 IPO(LeetCode:我疯起来连自己都卖)
502. IPO 假设 力扣(LeetCode)即将开始其 IPO.为了以更高的价格将股票卖给风险投资公司,力扣 希望在 IPO 之前开展一些项目以增加其资本. 由于资源有限,它只能在 IPO 之前完 ...
- Java实现k个数乘(cheng)(自然数的k乘积问题)
k个数乘(cheng) 题目描述 桐桐想把一个自然数N分解成K个大于l的自然数相乘的形式,要求这K个数按从小到大排列,而且除了第K个数之外,前面(K-l)个数是N分解出来的最小自然数.例如:N=24, ...
- java实现第八届蓝桥杯生命游戏
生命游戏 题目描述 康威生命游戏是英国数学家约翰·何顿·康威在1970年发明的细胞自动机. 这个游戏在一个无限大的2D网格上进行. 初始时,每个小方格中居住着一个活着或死了的细胞. 下一时刻每个细胞的 ...
- python numpy 库
引用文章:https://blog.csdn.net/xjl271314/article/details/80409034
- Cacti断图、大量报错故障
一.Cacti日志出现大量错误 最近查看Cacti日志,出现大量红色告警,并且每五分钟出现1次,虽然不影响流量的查看,但是肯定会有问题. 错误日志如下 ERROR: A DB Exec Failed! ...
- zabbix 邮箱告警
脚本内容 #!/bin/env python #coding:utf- import smtplib from email.mime.text import MIMEText from sys imp ...
- 源码分析(2)-LinkedHashMap(JDK1.8)
1.概述 LinkedHashMap继承自HashMap:在HashMap基础上,通过维护一条双向链表,解决了HashMap键值对遍历顺序和插入顺序一致的问题. 想了解LinkedHashMap源码, ...
- neo4j导入csv文件
neo4j导入csv文件 关于neo4j的安装 官网和网上博客提供了n中安装的方法,这里不再赘述: 普通安装: https://cloud.tencent.com/developer/article/ ...
- jar 反编译工具
luyten windows版本的 链接:https://pan.baidu.com/s/1hp6gyvJSj_4h60dk5AZejA 密码:c4u7 之所以推荐它,是因为它能避免普通的编译工具jd ...