点关注,不迷路;持续更新Java相关技术及资讯!!!
构建环境
- macOS 10.13.6
- JDK1.8
- IntelliJ IDEA 2018.3.6 (Ultimate Edition)
- Spring v5.1.9.RELEASE
- Gradle 5.5.1。直接使用brew安装Gradle brew install gradle
源码构建
源码导入
阅读Spring源码下的 import-into-idea.md 文件可知
Precompile spring-oxm with ./gradlew :spring-oxm:compileTestJava
修改 gradle/docs.gradle 脚本 一开始尝试直接构建Spring源码,在构建的过程中会报错,通过修改docs.gradle 脚本,注释 dokka 和 asciidoctor
源码构建
等了好长好长的时间,终于构建完成了。
在Spring项目中新增一个自己的module,尝试运行hello world,引入spring-context 依赖compile(project(":spring-context"))
运行main方法,发现报错
Error:(160, 32) java: 找不到符号 符号: 变量InstrumentationSavingAgent 位置:
网上搜索了一大堆的解决方法,发现都不行。后来看了spring-context的依赖发现,spring-instrument 在 spring-context 中为 optional 依赖(optional(project(":spring-instrument")) ),于是在自己的模块中添加spring-instrument依赖
再次运行main方法,程序运行成功。
为了感谢支持我的朋友!整理了一份Java高级架构资料、Spring源码分析、Dubbo、Redis、Netty、zookeeper、Spring cloud、分布式等资料
关注公众号:Java大型网站架构(免费获取)