Spring源码分析之环境搭建

写在最前面

最近突然心血来潮,想看看源码,看看大牛都怎么码代码,膜拜下。首选肯定是spring大法,于是说干就干,从GitHub上下载spring-framework源码编译拜读。

环境搭建

  1. 安装JDK 1.8+版本
  2. GitHub下载spring-framework源码,楼主下的是spring-framework-4.3.10.RELEASE版本
  3. 下载并安装Gradle,配置环境变量
  4. 编译下载的spring源码:如果IDE是eclipse,直接运行根目录下import-into-eclipse.bat文件即可(Linux下运行import-into-eclipse.sh);如果IDE是Intellij IDEA,参考文件import-into-idea.md,在根目录下运行命令gradlew cleanIdea :spring-oxm:compileTestJava编译源码(window下运行cmd cd到根目录)
  5. 导入工程,导入时选择Gradle,JDK 1.8+。

工程图样

导入后,工程结构目录如下(Intellij IDEA):

从图中可以看到,spring-framework工程下有很多模块。大多是我们熟知的,如:spring-aop,spring-test,spring-webmvc,spring-orm。Spring两大核心,AOP和IOC:spring-aop module实现了AOP功能;spring-core,spring-context,spring-beans modules共同实现了IOC功能。

下面,请尽情享受Spring源码吧!!!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏有趣的django

python爬虫入门(三)XPATH和BeautifulSoup4

 XML和XPATH 用正则处理HTML文档很麻烦,我们可以先将 HTML文件 转换成 XML文档,然后用 XPath 查找 HTML 节点或元素。 XML 指...

3044
来自专栏Java进阶架构师

闪电侠:2018.3 IntelliJ IDEA 重大更新:支持CPU火焰图,新增酷炫主题

就在上周,JetBrain 公司发布了 Java 集成开发环境 IntelliJ IDEA 最新版本 2018.3Beta,本篇文章,我将根据官方博客以及自己的...

581
来自专栏進无尽的文章

扒虫篇-Bug日志Ⅳ

解决办法:other linker flag -ObjC 造成的,有些时候设置other linker flag 为-ObjC会出现多次导入的报错。

561
来自专栏Java进阶架构师

精选提高开发效率的15个idea插件

最近大部分开发IDE工具都切换到了,所以也花了点心思去找了相关的插件。这里整理的适合各种语言开发的通用插件,也排除掉IntelliJ IDEA自带的常用插件了(...

2092
来自专栏酷玩时刻

微信公众号开发之项目导入Eclipse:Intellij IDEA:

本文将学习到: 1、Eclipse、Intellij IDEA clone项目 2、Intellij IDEA 如何激活 3、Maven 下载安装配置 ...

1243
来自专栏坚毅的PHP

ImageMagick and JMagick install on Mac OSX

接的遗留代码,在本地运行,有jmagick-6.4.0.jar 但是出现错误: javax.servlet.ServletException: java.lan...

3736
来自专栏计算机编程

Jenkins mac上配置原生android

请在gradle中配置好打包的key与alias的值,否则上面的打包方式打出来的包无法安装!

1061
来自专栏程序员的SOD蜜

PDF.NET SOD 开源框架红包派送活动 && 新手快速入门指引

一、框架的由来  快速入门 有关框架的更多信息,请看框架官方主页! 本套框架的思想是借鉴Java平台的Hibernate 和 iBatis 而来,兼有...

2619
来自专栏深度学习之tensorflow实战篇

CRT /Linux基本设置的语言颜色问题设置

 远程连接unix系统的工具,以前用的最多的就是SSH了,不过SSH有一个硬伤,不能设置客户端编码,有时候看中文很容易乱码,而且不能分组记录多服务器地址。put...

38410
来自专栏程序猿DD

简化Swagger使用的自制Starter:spring-boot-starter-swagger,欢迎使用和吐槽

项目简介 该项目主要利用Spring Boot的自动化配置特性来实现快速的将swagger2引入spring boot应用来生成API文档,简化原生使用swag...

2196

扫码关注云+社区