内容简介:一起来准备阅读下载源码到本地不建议下载
一起来准备阅读 Spring
源码
代码环境准备
-
JDK 8
-
Gradle
-
编译工具(常用 IDEA)
下载源码到本地
$ git clone git@github.com:spring-projects/spring-framework.git
不建议下载 master
分支的代码,因为有些小问题一直在修复,所以我下载的是 v2.3.0.M2
版本的 releases
代码。
因为我也是一边看书,一边做笔记,下载了源码,写的 demo
代码和注释都在里面,小伙伴们可以下载我上传的代码,亲测可运行~
设置 Gradle 路径
有两种选择:
-
选择 IDEA 工具中默认(Recommend)
-
选择用户自己下载的 Gradle (我本地通过 brew 下载)
最后设定:
下载依赖和编译
导入项目后,识别到 Gradle
依赖后,首先会从中央库下载相关的依赖。
下载完依赖后,进行代码编译,通过图形界面,选择根路径下的 build
任务。
最后编译生成 class
等文件路径,在各自模块的 build
目录。
Spring 源码分析大致流程
-
介绍概念
-
查看类的集成体系
-
简单 demo
-
查看源码
-
分析流程
遇到的坑
无法识别 Gradle 项目
这个问题是通过 version controll
克隆代码后,打开新项目时一直提示
Could not resolve symbol "XXX" # 还有右上角弹出的 Try resolve again
一开始不知道是哪个导入流程错误,通过查询资料,发现将代码 clone
到本地后,通过下面步骤操作,项目就能正常识别和下载依赖了:
-
点击
IDEA
的 ` File -> Open,选择项目的
build.gradle` -
按照提示设定
Gradle
-
下载依赖和编译
gradle 版本和 Idea 版本不匹配
本地的 gradle
版本号是 5.4.1
$ gradle -v Welcome to Gradle 5.4.1!
IDEA
工具的版本是 2018.2,查了资料,有可能是高版本 gradle
需要新版本 IDEA
,于是我就去下载新版工具。
(顺便安利一下 新版本的主题 Dark Purple Theme )
更新 IDEA
后,在构建项目时,在最后一步卡住了,提示:
java.lang.AbstractMethodError: org.jetbrains.plugins.gradle.tooling.util.ModuleComponentIdentifierImpl.getModuleIdentifier()Lorg/gradle/api/artifacts/ModuleIdentifier;
查看资料,大概是 gradle
升级后,出现了 jar
版本兼容的问题,于是按照提示,修改了编译方式( 看上面 gradle 选择方式图片 ),修改完成后,能够正常构建项目。
参考资料
1、 解决IDEA在导入Gradle项目之后报Could not resolve symbol “XXX”错误
2、 gradle版本引起编译报错问题:Cause: org.jetbrains.plugins.gradle.tooling.util.ModuleComponentIdentifierImpl.getM
3、[Gradle 5 IntelJ java.lang.AbstractMethodError
](https://www.jianshu.com/p/f9951d5506fc)
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 【MyBatis源码分析】环境准备
- Spring 源码学习-环境准备
- linux内核源码之基础准备篇
- 《k8s-1.13版本源码分析》源码准备
- php – Laravel:一般错误:1615准备好的声明需要重新准备
- 详解Openstack环境准备
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Introduction to the Design and Analysis of Algorithms
Anany Levitin / Addison Wesley / 2011-10-10 / USD 117.00
Based on a new classification of algorithm design techniques and a clear delineation of analysis methods, Introduction to the Design and Analysis of Algorithms presents the subject in a coherent a......一起来看看 《Introduction to the Design and Analysis of Algorithms》 这本书的介绍吧!
正则表达式在线测试
正则表达式在线测试
RGB CMYK 转换工具
RGB CMYK 互转工具