Spring 源码学习笔记-环境准备

栏目: 编程工具 · 发布时间: 5年前

内容简介:一起来准备阅读下载源码到本地不建议下载

一起来准备阅读 Spring 源码

代码环境准备

下载源码到本地

$ git clone git@github.com:spring-projects/spring-framework.git

不建议下载 master 分支的代码,因为有些小问题一直在修复,所以我下载的是 v2.3.0.M2 版本的 releases 代码。

因为我也是一边看书,一边做笔记,下载了源码,写的 demo 代码和注释都在里面,小伙伴们可以下载我上传的代码,亲测可运行~

码云 Gitee 地址

Github 地址

设置 Gradle 路径

有两种选择:

  • 选择 IDEA 工具中默认(Recommend)

  • 选择用户自己下载的 Gradle (我本地通过 brew 下载)

最后设定:

Spring 源码学习笔记-环境准备

下载依赖和编译

导入项目后,识别到 Gradle 依赖后,首先会从中央库下载相关的依赖。

下载完依赖后,进行代码编译,通过图形界面,选择根路径下的 build 任务。

Spring 源码学习笔记-环境准备

最后编译生成 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 )

Spring 源码学习笔记-环境准备

更新 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)


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

模糊数学基础及实用算法

模糊数学基础及实用算法

李鸿吉编 / 科学出版社 / 2005-1 / 55.00元

本书开发了模糊数学常用的计算机程序,并以大量的算例系统地介绍了模糊数学的实用算法。本书可以作为模糊数学的应用程序包,在详细解释源代码的同时,对应用程序开发所用到的Visual Basic 6.0方法做了系统介绍,其目的是为读者做进一步的自主开发提供便利。本书所提供的源程序可以作为读者自主开发的素材。本书配有光盘,分章节提供程序源代码。 本书可以作为大专院校、培训班的教学参考书。对需......一起来看看 《模糊数学基础及实用算法》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具