spring源码解析——spring源码导入eclipse
一.前言
众所周知,spring的强大之处。几乎所有的企业级开发中,都使用了spring了。在日常的开发中,我们是否只知道spring的配置,以及简单的使用场景。对其实现的代码没有进行深入的了解。开卷有益,在我们空闲的时间里面阅读一下spring的源码,对提升我们的自身能力还是还有很大的帮忙。下面总结一下spring源码导入eclipse的具体的操作。
二.spring的特点
spring的的核心就是IOC(控制反转)和AOP(基于切面的编程)
事务管理方面采用了:声明式事务
为各种主流的平台提供了便捷的支持
三.环境配置
JDK : 1.6以上版本
GitHub
grable
四.源码下载
1、下载
spring的源码是由github版本控制器来管理,所以直接使用git直接clone Spring源码到本地:git clone git://github.com/SpringSource/spring-framework.git
找到git的安装目录,进入bin目录运行tclsh85.exe,直接输入命令下载
下载完毕,在git\bin里面查看
2、编译
编译过程,这里所谓的编译是通过gradle工具(gradle工具与Ant自动构建工具一样)编译Spring-framework的项目文件,主要干的事情就是下载Spring各个模块依赖的jar包,这个过程一般情况下非常慢,可能是因为资源都在墙外,并且可能出现jar包很久下载不下来的情况,这时候直接ctrl+c退出编译命令后再次执行命令,对于已经下载下来的以来包不会再次下载,所以编译的过程相当与可以断线重连的效果。
①进入源码目录执行:gradle eclipse -x :eclipse
这个构建过程十分缓慢,需要耐心等待。
②直接通过eclipse的import到入Spring-framework源码目录
导入源码以后,项目会出现报错的情况, 去CSDN下载spring-cglib-repack-3.2.0.jar,spring-objenesis-repack-2.2.jar两个jar
替换对应的报错jar即可,重新项目重新Clen一下。
替换对应jar以后还可能出现如下的这种错:
就是缺少groovy插件,所以在eclipse中安装一个groovy插件,在eclipse的 Help -> Install New Software 中,添加groovy的下载连接:
http://dist.springsource.org/milestone/GRECLIPSE/e4.4/
五.总结
在此spring的源码就导入成功了,就可以对spring的源码进行学习,在整个过程中,可以会遇到各种各样的情况,所以需要耐心等待以及解决。
spring源码解析——spring源码导入eclipse的更多相关文章
- SpringBoot源码学习1——SpringBoot自动装配源码解析+Spring如何处理配置类的
系列文章目录和关于我 一丶什么是SpringBoot自动装配 SpringBoot通过SPI的机制,在我们程序员引入一些starter之后,扫描外部引用 jar 包中的META-INF/spring. ...
- Spring5源码解析-Spring框架中的单例和原型bean
Spring5源码解析-Spring框架中的单例和原型bean 最近一直有问我单例和原型bean的一些原理性问题,这里就开一篇来说说的 通过Spring中的依赖注入极大方便了我们的开发.在xml通过& ...
- 源码解析Spring AOP的加载与生效
本次博主主要进行Spring AOP这里的解析,因为在工作中使用后,却不知道背后的实现原理并在使用的过程中发现了一些认知缺陷,所以决定写这么一篇文章以供大家参考参考,进入正题. 本次博主使用了@Asp ...
- 从源码解析 Spring JDBC 异常抽象
初入学习 JDBC 操作数据库,想必大家都写过下面的代码: 数据库为:H2 如果需要处理特定 SQL 异常,比如 SQL 语句错误,这个时候我们应该怎么办? 查看 SQLException 源码,我们 ...
- Spring源码解析--Spring的整体架构
概述 Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用.Spring是于2003 年兴起的一个轻量级的Java 开发框 ...
- spring-framework-4.1.x源码阅读环境搭建(导入Eclipse)
注意:搭建spring-framework-4.1.x源码 eclipse工作空间需要安装jdk8. spring-framework-4.1.x项目采用目前主流的项目管理工具gradle进行构建,至 ...
- 《Flink 源码解析》—— 源码编译运行
更新一篇知识星球里面的源码分析文章,去年写的,周末自己录了个视频,大家看下效果好吗?如果好的话,后面补录发在知识星球里面的其他源码解析文章. 前言 之前自己本地 clone 了 Flink 的源码,编 ...
- 微信小程序扫码解析小程序码
通过微信扫小程序码,跳转到应用小程序内, 如何解析小程序码的参数呢? 一般小程序码会跳转到设置的页面,如首页, 可以直接跳转到小程序首页,然后解析小程序携带的参数,再打开某个页面. (小程序码的路径要 ...
- 深入源码解析spring aop实现的三个过程
Spring AOP的面向切面编程,是面向对象编程的一种补充,用于处理系统中分布的各个模块的横切关注点,比如说事务管理.日志.缓存等.它是使用动态代理实现的,在内存中临时为方法生成一个AOP对象,这个 ...
随机推荐
- Network
App Icon: http://www.easyicon.net/
- Git 如何只更新项目中某个目录里的文件
Git由于在远端和本地都有一个代码库, 这样更新单个文件比SVN要麻烦一点. 1. 如果想拿远端git服务器上的最新版本(或某个特定版本)覆盖本地的修改,可以使用git pull命令, 但这会 ...
- 对偶SVM
1.对偶问题的推导 为什么要求解对偶问题?一是对偶问题往往更容易求解,二是可以自然的引入核函数. 1.1 用拉格朗日函数将原问题转化为"无约束"等价问题 原问题是: 写出它的拉格朗 ...
- 乐校园单车项目第一天——购买Apple开发者账号、创建SVN
日常三问: 1. 我应该干什么? 2. 我能干什么? 3. 我想干什么?
- ffmpeg-201612[01,08,10,17,21,27,30]-bin.7z
ESC 退出 0 进度条开关 1 屏幕原始大小 2 屏幕1/2大小 3 屏幕1/3大小 4 屏幕1/4大小 5 屏幕横向放大 20 像素 6 屏幕横向缩小 20 像素 S 下一帧 [ -2秒 ] +2 ...
- CorelDRAW各版本安装软件下载
CorelDRAW X8 SP6-32位64位免激活免登陆版 百度网盘下载地址 提取密码:1z6w CorelDraw X7 (64位) 简体中文完整版: 百度网盘下载地址 提取密码:sqaw C ...
- C# 同类型实体赋值
#region 更新赋值,前者赋值给后者 public static void ShadowCopy(object a, object b) { if (a == null) return; if ( ...
- php备份mysql的代码
1. mydb.php //DB类2. backup.php //备份脚本3. restore.php //还原脚本 mydb.php <?class db{ var $linkid;var $ ...
- winserver 08 64位安装sql05 64位提示asp版本注册
将打开 安装IIS 6.0的就可以了,然后重启下
- css经典布局——头尾固定高度中间高度自适应布局
转载:穆乙 http://www.cnblogs.com/pigtail/ 相信做过后台管理界面的同学,都非常清楚这个布局.最直观的方式是框架这个我不想多写费话,因为我们的重心不在这里.如果有不了解的 ...