天天看点

《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结

说在前头:本人为大二在读学生,书写文章的目的是为了对自己掌握的知识和技术进行一定的记录,同时乐于与大家一起分享,因本人资历尚浅,能力有限,文章难免存在一些错漏之处,还请阅读此文章的大牛们见谅与斧正。若在阅读时有任何的问题,也可通过评论提出,本人将根据自身能力对问题进行一定的解答。

1.什么是Spring?

        Spring 框架是一个 Java 平台,为开发 Java 应用程序提供全面的基础架构支持。Spring 处理基础结构,因此您可以专注于应用程序。

        Spring 使您能够从“普通的 Java 对象”(POJO)构建应用程序,并将企业服务非侵入性地应用于 POJO。此功能适用于 Java SE 编程模型以及全部和部分 Java EE。

        介于本文章侧重点为Spring源码的构建,对于Spring的介绍先讲到这里,若想对Spring有更深刻的了解,建议通过阅读Spring的官方文档或网上的Spring中文文档进行了解。在这里给大家列出官方文档地址和中文文档地址,大家自行选择阅读。

Spring官方文档:https://spring.io/projects/spring-framework              Spring中文文档:https://www.docs4dev.com/docs/zh/spring-framework/5.1.3.RELEASE/reference/overview.html#overview-spring
           

2.构建前准备

  • Spring5.0.2源码
  • Gradle4.0
  • IntelliJ IDEA 2019.1
下载Spring.5.0.2源码              github下载地址:              https://github.com/spring-projects/spring-framework/archive/v5.0.2.RELEASE.zip              如果遇到无法访问github或下载时非常缓慢的问题,可以关注微信订阅号“Bosen的技术分享栈”              回复“spring”即可获取Spring5的源码百度云分享地址,              输入获取码下载解压即可。将下载好的源码解压(目录结构如下)
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
打开build.gradle文件找到下图对应的位置,              添加阿里云镜像              maven { url "http://maven.aliyun.com/nexus/content/groups/public/"}
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
下载Gradle4.0              因为spring5源码项目是使用gradle构建的,              所以我们需要下载gradle帮我们构建源码阅读环境,              这里下载官方推荐的4.0版本。访问官网进行下载:              https://gradle.org/releases/              下载完成后,解压到对应的路径即可              接下来还需配置gradle的环境变量(根据下图配置)
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
配置好环境变量后,打开命令行界面输入              gradle -v              ​              若输入信息如下图,即设置成功
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结

3.开始构建

gradle配置完成后,我们将命令行目录切换到我们源码的根目录并执行              gradlew.bat(如下)              执行gradlew.bat后,项目将开始构建源代码,如下图即构建成功
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
将源码构建好后,我们需要将项目构建成eclipse项目,              我们继续执行根目录下的              import-into-eclipse.bat文件开始构建,              网络良好的情况下,十分钟左右即可构建完成。构建成功后如下图所示
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
此时我们已经将spring源码构建为eclipse项目,              我们只需使用idea打开该项目即可(如下图)
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
点击Ok,idea将会自动下载对应的依赖,大约需等待十分钟左右              等待idea下载完成后,项目栏如上图所示              要如何检验自己的项目是否以及成功构建?              方法很简单,如下图路径找到ApplicationContext              然后使用快捷键ctrl+alt+shitl+u查看              如果生成了下面的类关系图即表明你的源码构建成功
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结

4.测试

接下来我们开始对我们构建好的spring进行使用、测试              ​              测试前我们需要对源码进行预编译(如下图)
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
等待预编译完成后,就可以正式开始编写我们的测试代码,测试代码结构如下              ApplicationConfig 配置类              IndexService 模拟逻辑处理类              Application 启动类
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
package com.bosen.www.config;
​
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
​
/**
 * <p>配置类</p>
 * @author Bosen 2021/5/15 5:52
 */
@ComponentScan("com.bosen.www")
@Configuration
public class ApplicationConfig {}
           
package com.bosen.www.service;
​
import org.springframework.stereotype.Service;
​
/**
 * <p>模拟业务逻辑处理</p>
 * @author Bosen 2021/5/15 5:54
 */
@Service
public class IndexService {
   public String test() {
      return "This is IndexService test();";
   }
}
           
package com.bosen.www;
​
import com.bosen.www.config.ApplicationConfig;
import com.bosen.www.service.IndexService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
​
public class Application {
   public static void main(String[] args) {
      ApplicationContext applicationContext =
            new AnnotationConfigApplicationContext(ApplicationConfig.class);
​
      IndexService service = applicationContext.getBean(IndexService.class);
​
      System.out.println(service.test());
   }
}
           
测试程序运行结果如下
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结
如果程序在运行时报如下错误,这是因为缺失AspecrJ而导致的,              原因可能是构建时,因为网络问题未成功下载到AspecrJ,              因此需要我们自己手动下载AspecrJ,具体操作可参考下面的文章。              https://blog.csdn.net/weixin_43899635/article/details/110368806
           
《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结

5.总结

        经过上面的“九九八十一难”我们终于成功构建好了Spring5的源码,其实总的构建过程并不复杂,虽然在构建过程可能还会遇到各种错误,但只要静下心来分析错误原因,一步一步排查就可以很轻易的构建成功。

        那今天就讲到这里吧,刚构建好Spring5源码的你是不是已经迫不及待的想要”一睹为快“了呢?一起加油吧!

   👇长按二维码关注👇

《如何构建Spring5源码阅读环境》1.什么是Spring?2.构建前准备3.开始构建4.测试5.总结