一.读源码的目的
我们在开发过程中往往会运用一些市场上一些主流的框架,例如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. nvm 安装及操作 node版本管理

    安装 > curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash 安装完成后重启下 ...

  2. PTA --- 天梯赛 L1-064 估值一亿的AI核心代码

    L1-064 估值一亿的AI核心代码 (20 point(s)) 本题要求你实现一个稍微更值钱一点的 AI 英文问答程序,规则是: 无论用户说什么,首先把对方说的话在一行中原样打印出来: 消除原文中多 ...

  3. python-Web-django-图片上传

    建路由 创建方法 渲染页面 下载plupload插件.将插件放在项目根目录下的static下 写页面,引入js,写html 这个容器:放上传的图片 当上传后,需要ul里放3要素: 元素1:隐藏Inpu ...

  4. python-爬虫-bs4-BeautifulSoup

    代码的使用流程: 核心思想:将html文档转换成Beautiful对象,然后调用该对象中的 属性和方法进行html文档指定内容的定位查找. 1 导包:from bs4 import Beautiful ...

  5. Linux C\C++基础 字符数组、字符串和字符串常量

    1.字符数组和字符串 C语言没有字符串类型,用字符数组模拟 字符串一定是字符数组,字符数组不一定是字符串 如果字符数组以字符'\0'('\0'等同与数字0)结尾,那么这个字符数组就是字符串 char ...

  6. 配置传统vlan间路由

    S1#SH RUN spanning-tree mode pvst ! interface FastEthernet0/1 switchport access vlan 10 switchport m ...

  7. c++ | size_t

    1.size_t的定义 size_t是一种数据相关的无符号类型,它被设计得足够大以便能够内存中任意对象的大小. 在cstddef头文件中定义了size_t类型,这个文件是C标准库stddef.h头文件 ...

  8. 合并两个排序的链表递归和非递归C++实现

    题目描述: 输入两个单调递增的链表,输出两个链表合成后的链表,要求合成后的链表满足单调不减规则. 1.分析 已知输入的两个链表递增有序,要使输出的链表依然递增有序,可以依次从输入的两个链表中挑选最小的 ...

  9. Partition to K Equal Sum Subsets

    Given an array of integers nums and a positive integer k, find whether it's possible to divide this ...

  10. 解决jsp无法用el表达式的问题

    在写springMVC的项目时,用jsp去前端展示数据,期间遇到了一个问题就是无法用el表达式. 最后排除一切之后发现是因为自己maven项目里web.xml的版本问题. 我的maven项目web.x ...