源码构建
1.下载
- 下载Spring源码,这里以 5.0.2.RELEASE 为例,下载地址 https://github.com/spring-projects/spring-framework/archive/v5.0.2.RELEASE.zip>
- Spring 源码中有很多 module,在这里做出简单说明:
-
spring-jcl
:spring 封装的日志框架。 -
spring-core
:spring 核心依赖,包含 Spring 框架基本的核心工具类, Spring 的其他纽件都要用到这个包里的类, Core 模块是其他纽件的基本核心,引入该依赖会同时引入spring-core、spring-jcl -
spring-beans
:所有应用都要用到的,包含访问配直文件、创建和管理 bean 以及进行 IOC/DI 操作相关的所有类 -
spring-context
:Co服务器托管网ntext 模块构建于 Core Beans 模块基础之上,提供了一种类似于 JNDI 注册器的框架式的对象访问方法。Context 模块继承了 Beans 的特性,为 Spring 核心提供了大量扩展,添加了对国际化 (例如资源绑定)、事件传播、资源加载、定时任务和对 Context 透明创建的支持。Context 模块同时也支服务器托管网持 J2EE 的一些特性, 例如 EJB 、JMX 和基础的远程处理。ApplicationContext 接口是 Context 模块的关键。 -
spring-jdbc
:spring 对 jdbc 的封装,并提供了编程式事务控制,引入该依赖会同时引入spring-jdbc、spring-tx -
spring-tx
:spring 提供的声明式事务控制,包含 @Transaction 声明式事务注解 -
spring-web
:spring 的 web 框架,引入该依赖会同时引入spring-beans、spring-core、spring-jcl、spring-web -
spring-webmvc
:springmvc 框架,是 web 的一个实现,引入该依赖会同时引入spring-aop、spring-beans、spring-context、spring-core、spring-expression、spring-jcl、spring-web、spring-webmvc,做一般的 web 开发可以直接引入该依赖即可,不必引入其他 spring 依赖。
2.构建
- Spring5 以后采用 Gradle 来编译,因此构建源码前先安装 Gradle 环境。这里使用 IDEA2020.1.3 版本打开工程后,IDEA 会自动下载对应 Gradle4.3.1 版本的zip包,并自行开始构建,Gradle 版本可以在源码根目录下的 build.gradle 文件找到 gradleVersion = 4.3.1 配置。通常会出现两个问题:
- integration-0.9.15.pom 找不到:在 build.gradle 文件中,将 id “org.jetbrains.dokka” version “0.9.15” 其版本 0.9.15 修改为 0.9.17 即可。
- 多种依赖找不到:找到 build.gradle 文件中的 repositories,在第一行添加如下:
repositories {
maven { url "http://maven.aliyun.com/nexus/content/groups/public"} //添加阿里云环境
maven { url "https://repo.spring.io/libs-release" }
maven { url "https://repo.spring.io/milestone" } // for AspectJ 1.9 beta
}
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
相关推荐: Ansible上通过roles简化playbook演示介绍
目录 一.roles介绍 1.作用 2.role的目录结构 3.role和tasks的执行优先级顺序 二.自定义一个httpd的角色 1.完整目录结构展示 2.主要的各个目录配置 (1)vars目录和templates目录 (2)tasks目录和handler…