zoukankan      html  css  js  c++  java
  • 【spring源码系列】之【环境搭建】

    1. gradle安装

    1.1 下载gradle

    gradle官网下载对应的版本,笔者用的6.0.1,下载地址如下https://gradle.org/releases/,找到6.0.1,选择complete连接下载,如下图

    1.2 配置环境变量

    解压gradle到指定目录,配置环境变量GRADLE_HOME、Path,与JDK类似,如下图


    在命令行输入gradle -v,出现如下信息表示安装成功!

    2. 准备spring源码工程

    因为pom文件自动下载的源码不能在里面写注释,准备源码是后续方便在源码里写注释。

    2.1 下载源码

    源码下载地址为:https://github.com/spring-projects/spring-framework,
    笔者版本为5.2.3.RELEASE,因githup下载速度慢,一是可以FQ下载,二是通过码云克隆镜像,再从码云下载,操作如下:
    step1: 登录码云账户,点击右上角+号,新建仓库;

    step2: 将spring的githup地址复制到导入已有仓库,并创建;

    step3:从码云下载刚刚创建的克隆镜像,注意选择对应版本;

    上述step3也可以通过命令行下载git clone -b v5.2.3.RELEASE https://gitee.com/wzj2006/spring-framework.git
    速度非常快!

    2.2 源码编译

    2.2.1 项目导入IDEA

    2.2.2 安装kotlin插件,并重启IDEA

    2.2.3 IDEA配置gradle

    2.2.4 编译spring

    在编译前修改build.gradle文件中的仓库,优先选择阿里云,如下

    repositories {
      maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
      maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'}
      mavenCentral()
      maven { url "https://repo.spring.io/libs-spring-framework-build" }
    }
    

    在项目的根目录下执行gradlew :spring-oxm:compileTestJava,如下图所示,表示编译成功,第一次执行需要几分钟,再执行会较快。

    3. 准备示例项目工程

    step1:创建spring-app项目,IDEA创建maven项目如下图

    step2: 引入spring-context、junit、logback依赖

      <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <spring.version>5.2.3.RELEASE</spring.version>
      </properties>
    
      <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.11</version>
          <scope>test</scope>
        </dependency>
    
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-context</artifactId>
          <version>${spring.version}</version>
        </dependency>
    
        <dependency>
          <groupId>ch.qos.logback</groupId>
          <artifactId>logback-classic</artifactId>
          <version>LATEST</version>
        </dependency>
    

    step3: 分别创建SpringHello类、配置文件spring.xml、测试类TestSpring;


    step4: 运行测试类结果如下:

    4. 源码写注释

    maven自动下载的jar包无法在里面写注解,需要将自动下载 jar包替换为源码工程打的jar包,分为以下几步:
    step1: 在spring-context的包上右键,选择Open Library Settings;

    setp2: 分别加入先前下载的编译后的源码工程的jar包与源文件,如下图:



    把原来非源码工程中的两个文件删除。

    step5: 调试示例项目工程中中的TestSpring,进入源码,发现可以写注释了,如下图:

    接下来会发现一个有趣的现象,写完注释后,再次debug进入后,进不了断点了,原因是java源文件与class文件不一致了,所以每次写完注释后要重新打包源码源码工程中的模块。
    step6: 重新编译打包,在gradle中找到相应模块,tasks下面的build,双击jar即可。

    5. 总结

    本篇主要讲述了环境相关的准备工作,通过一张思维导图总结如下:

    后续将通过连载方式一步一步揭开spring的面纱。

  • 相关阅读:
    React 组件间的通讯
    javascript 闭包详解及作用
    selenium使用技巧
    多线程
    渗透测试
    什么是Selenium Grid?如何搭建Selenium Grid?
    前端性能测试工具原理与行业常用工具简介
    后端性能测试工具原理与行业常用工具简介
    性能测试方法和应用
    软件性能与性能指标
  • 原文地址:https://www.cnblogs.com/father-of-little-pig/p/14643051.html
Copyright © 2011-2022 走看看