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下载速度慢,一是可以***下载,二是通过码云克隆镜像,再从码云下载,操作如下:
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的面纱。

©著作权归作者所有:来自51CTO博客作者mb6066e453ca35b的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 【实战案例】Ajax请求第三方接口数据利用模板引擎渲染天气预报页
  2. BlueStore源码分析之对象IO
  3. BlueStore源码分析之事物状态机
  4. BlueStore源码分析之Cache
  5. go语言学习(三):源码文件
  6. I/O模型和Java NIO源码分析
  7. go学习笔记(二):go语言工作区介绍
  8. OpenCV三大经典项目实战 一次性掌握计算机视觉核心技能
  9. Netty源码剖析与实战

随机推荐

  1. Android中的人脸检测(静态和动态)
  2. Android中TextView文字居中与垂直靠左居
  3. 为Android内核添加新驱动,并添加到menucon
  4. 修改android 睡眠的时间的两种方法
  5. Android TextView属性大全
  6. Android特效第四篇:Android抽屉实现
  7. android获取系统标准时区的时间
  8. Unity与Android(Android Studio)交互及遇到
  9. 【Android】滚动条属性
  10. android:versionCode和android:versionNa