Spring 源码下载及构建
官网说得很清楚 Build from Source,而这儿记录一些我在下载、构建过程中,遇到的一些关键点。
重点参考:spring-framework项目地址
环境准备
Git
自不必说,github的帮助页
JDK
ps:
jdk 8 是 LTS 版, 下一个 LTS 版是 jdk 11, 从当前技术普及来看, 目前主流的仍是 jdk8。
jdk 版本编号的末位数,奇数编号的发行版仅包含经验证的 bug fix, 偶数编号的发行版不含经验证和非经验证的改进, 所以生产环境推荐使用奇数编号的发行版。
这儿选用了 jdk 11 的最新版本 Java SE 11.0.4 (LTS)
官网很友善的特别提醒了:请确保系统环境变量中的 JAVA_HOME 指向的 JDK 版本正确…
下载和编译
下载代码
官网推荐使用 git clone
git clone git@github.com:spring-projects/spring-framework.git
限于网络环境不太稳定,spring 源代码也比较大,我采用了一种稍微繁琐了些的方式:
1、fork spring-framework 至个人 github 仓库;
2、登录 gitee ,同步该项目到 个人 gitee 仓库;
3、本地 git clone git@gitee.com:leishiguang/spring-framework.git
如此一来,速度杠杠的,随后便修改本地的远程仓库地址,实现和原始项目的同步
Gradle
从 Spring5 开始都采用 Gradle 编译,所以构建源码要安装 Gradle。而 Spring 5 的 build 文件帮助解决了这部分问题…
在 linux 中,执行 ./gradlew
在 windows 中,直接运行 gradlew.bat 文件
会自动安装 gradle,编译成功后,会显示:
官方推荐,执行一次测试,我这儿则是在命令行行窗口执行:
gradlew -a :spring-webmvc:test
关于 Gradle 可以参考官网
导入工程
Follow instructions for Eclipse and IntelliJ IDEA.
看喜好,可以导成 eclipse 或者 idea,以 idea 为例子:
- 执行一次编译测试:
./gradlew :spring-oxm:compileTestJava
如图:
- idea 中导入
File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle
这个步骤中,如果一切都按默认的来,Gradle 会从中央仓库下载依赖。为了提高速度,提前给 Gradle 进行远程仓库的配置和指定。
idea 加载完项目之后,找到 ApplicationContext 类,查看其类图界面,将如下图所示~
ps: 导入工程的时候,idea 提示,检测到 Kotlin 语言……
Google和Spring都开始支持Kotlin语言,或许,是时候开始使用Kotlin了