一.读源码的目的
我们在开发过程中往往会运用一些市场上一些主流的框架,例如spring,hibernate ,strust 和mybaities 等。
我们往往可能有时候只知道运用,却不知道这些框架内部实现机制。这样我们就需要读这些框架的源码,方便我们更深入的去了解
和熟练的使用这些框架。这里我将介绍下IntelliJ IDEA 13.1 开发环境下如何导入源码工程,以及拿到源码如何解读。以spring为例。
二、读源码的工具
开发环境:IntelliJ IDEA 13.1 
源码包:spring FrameWork 来源于spring 官网,spring如今把代码托管在github上面,下载需要github上下载:
可以通过git clone 命令下载。git clone https://github.com/spring-projects/spring-framework.git;
三、导入源码包
1.打开Intellij Idea 然后选择 File->Import project 如下图:

2,然后就会出现下面界面选择spring的根目录:如下图:

3然后出现:

4,点击gradle 再点击next出现:

再点击finish.就会出现下图:

gradle会一直去下载需要的gradle 包,这个过程是很漫长的。多则几个小时,界面不是很友好,看不到导入的进度,那么怎么办呢. 这个我也目前没有解决这个问题,大家如果找到了可以告诉我下。网上网友说可以需改gradle版本配置等方式解决这个问题,但是我曾尝试过,没有成功。
可以换种方式:我是这么做的 ,我会先把idea 项目转换成eclipse项目。在spring 根目录下面有这个目录结构:

这里的import-into-eclipse.bat 是windows下的批处理命令可以吧git项目修改成eclipse需要目录结构。
双机这个文件,
就会出现然后:

这里会下载所有需要等待的工程依赖包。下载完成就可以直接导入了。 
在下载过程中spring源码目录下的结构是有变化的:如图:

会多出eclipse中工程目录文件等,而IntelliJ IDEA 13.1 对eclipse项目完美支持。所以可以导入。

Intellij Idea如何导入spring源码的更多相关文章

  1. idea 导入spring 源码注意的问题

    问题:idea导入spring 源码的步骤是: 首先从官网下载spring的源码:git clone https://github.com/spring-projects/spring-framewo ...

  2. idea导入spring源码

    1.环境: Intellij idea 2018.2 gradle 4.10.2 spring framework:5.2.0 注意版本不符合可能会导致编译失败. 参考版本: 1.首先下载安装 Int ...

  3. spring源码学习(一):eclipse导入spring源码

    前言 对于一门技术,我们最先是了解它(what),然后再熟练的使用它(how)以及何时用它(when),最后肯定要看透它(why).spring作为Java开发人员可以说是最熟悉不过的了,基本每个Ja ...

  4. 导入spring源码到eclipse

    1.1安装Gradle 可以从http://www.gradle.org/downloads页面下载Gradle.下载后将文件解压到指定目录,我放在D:\软件\gradle-3.3,然后设置环境变量. ...

  5. IntelliJ IDEA 导入Spring源码

    第一步: 使用git 拉取代码 git 命令: git init    //创建git仓库 git clone  https://github.com/spring-projects/spring-f ...

  6. Spring源码分析_01_ idea搭建spring源码阅读环境

    二.参考资料 1.Intellij Idea如何导入spring源码

  7. Spring源码学习01:IntelliJ IDEA2019.3编译Spring5.3.x源码

    目录 Spring源码学习01:IntelliJ IDEA2019.3编译Spring5.3.x源码 前言 工欲善其事必先利其器.学习和深读Spring源码一个重要的前提:编译源码到我们的本地环境.这 ...

  8. Spring源码解析 | 第一篇 :IntelliJ IDEA2019.3编译Spring5.3.x源码

    前言 工欲善其事必先利其器.学习和深读Spring源码一个重要的前提:编译源码到我们的本地环境.这样方便我们在本地环境添加注释.断点追踪.查看类或接口的继承关系等等,更加高效的学习Spring源码.个 ...

  9. Spring源码阅读 源码环境搭建(一)

    ring 源码阅读的搭建(一) 一 下载spring源码 进入官方网页:https://spring.io/projects/spring-framework 进入相关的github位置,下载zip包 ...

随机推荐

  1. flask 学习(二)

    安装了flask扩展 以及flask-bootstrap 默认情况下,flask在template文件夹寻找模板. flask 加载的是Jinja2模板,该模板引擎在flask中由函数render_t ...

  2. SQL学习(四)Where语句中的各种匹配方式

    在where语句中,我们需要制定各种条件,条件的各种组合需要用到不同的关键字 一.单条件 如:select * from ticket where name='测试' 二.多条件 1.和(and) 如 ...

  3. JS事件中级 --- 拖拽

    http://bbs.zhinengshe.com/thread-1200-1-1.html 要求:实现div块的拖拽 原理:拖拽过程中鼠标点和div块的相对位置保持不变. 需要理解三点: 1. 为什 ...

  4. Cocos2d-x入门之旅

    Cocos通过动作(Action)让精灵动起来,把数个动作组成序列(Sequence)就能让精灵做出连续的动作,在动作中我们可以改变精灵的位置,旋转角度,缩放比例,等等 动作(Action)# 首先我 ...

  5. Beego框架的一条神秘日志引发的思考

    公司目前的后台是用Beego框架搭的,并且为了服务的不中断升级,我们开启了Beego的Grace模块,用于热升级支持.一切都跑井然有序,直到有一天,领导甩出一些服务日志,告知程序一直报错: 2018/ ...

  6. golang 多级json转map

    func main() { jsonStr := `{"isSchemaConforming":true,"schemaVersion":0,"unk ...

  7. 0-1 RSS订阅

    RSS订阅 RSS是什么 中文维基百科对RSS的介绍 w3school对RSS的介绍 少数派的RSS介绍 RSS阅读器 Feedly:注册使用即可,一个账号可以订阅200个RSS源,完全足够日常需要 ...

  8. 大数据技术之kettle

    大数据技术之kettle 第1章            kettle概述 1.1    什么是kettle kettle是一款开源的ETL工具,纯java编写,可以在Windows.Linux.Uni ...

  9. 【LeetCode】18、四数之和

    题目等级:4Sum(Medium) 题目描述: Given an array nums of n integers and an integer target, are there elements ...

  10. 【转载】深度学习中softmax交叉熵损失函数的理解

    深度学习中softmax交叉熵损失函数的理解 2018-08-11 23:49:43 lilong117194 阅读数 5198更多 分类专栏: Deep learning   版权声明:本文为博主原 ...