Spring5.2.x源码构建

Spring5.2.x源码构建

windows构建环境

  • idea2020.2.3
  • [gradle5.6.4](http://services.gradle.org/distributions/ )
  • jdk8u265
  • spring5.2.x
  • aspectj1.9

gradle安装配置

Gradle可在所有主要操作系统上运行,并且仅需要安装Java JDK版本8或更高版本。 要检查,请运行java -version:

1
2
3
4
5
$ java -version

openjdk version "1.8.0_265"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_265-b01)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.265-b01, mixed mode)
  1. 下载gradle5.6.4 ,gradle分两个版本:

    • Binary-only,精简版。
    • Complete ,带有文档和源代码。
  2. 解压发行包。

    使用文件资源管理器创建一个新目录C:\Gradle

    打开第二个“文件资源管理器”窗口,然后转到下载Gradle发行版的目录。 双击ZIP存档以显示内容。 将内容文件夹gradle-6.7拖到新创建的C:\Gradle文件夹中。

    或者,您可以使用所选的存档器工具将Gradle发行版ZIP压缩进C:\Gradle

  3. 配置gradle系统环境环境

alt gradle_home

alt gradle_user_home

GRADLE_HOME 配置的是gradle的安装目录。

**GRADLE_USER_HOME **配置的是gradle下载的文件本地仓库存储地址。

然后将%GRADLE_HOME%\bin添加到系统变量Path中去。

如果之前配置的maven变量名为MAVEN_HOME,则将其改为M2_HOME,因为后面gradle中mavenLocal()函数将会识别M2_HOME变量。

jdk安装

jdk需要选择OpenJDK发行版,我们平常很多人用的都是OracleJDK,但是OracleJDK不包括JFR类。jdk版本要求是jdk8u262及其以上版本。

配置jdk环境变量

alt java_home

%JAVA_HOME%\bin添加到系统变量Path中去。

aspectj1.9下载安装配置

  1. 下载aspectj,并直接下一步进行完整安装。
  2. 配置aspectj环境变量。
    • aspectjrt.jar添加到你的classpath中去。
      • copy aspectjrt.jar to the jdk/jre/lib/ext directory
      • add aspectjrt.jar to your CLASSPATH environment variable (see the next section for details)
      • always use the “-classpath aspectjrt.jar” option when running programs compiled with ajc
    • C:\aspectj1.9\bin配置到系统变量Path中去。

获取spring源码

  1. 通过命令行

    git clone git@github.com:spring-projects/spring-framework.git

    cd spring-framework

  2. 通过构建工具

    当导入idea2020.2.3中时,会检测到gradle项目并进行自动构建。

通过命令行进行构建

通过命令gradlew build进行编译、测试和生成所有 jar、distribution zips 和文档。

打开cmd工具,cd到spring源码根目录。

然后执行如下命令:

1
gradlew :spring-oxm:compileTestJava

此时由于是国内环境,则无法链接https://services.gradle.org/distributions/gradle-5.6.4-bin.zip下载gradle-5.6.4-bin.zip。报错

1
Exception in thread "main" java.net.UnknownHostException: services.gradle.org

alt gradle报错

遇到无法下载jar包问题,基本都跟网络环境有关系。

解决办法:

1、用梯子进行jar包下载并构建

  • 执行gradlew :spring-oxm:compileTestJava,就会很快构建成功了。

alt 构建成功

  • 导入到idea中,操作步骤如下:

    File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle

  • 导入完成后,idea会自动构建。

spring-aspects模块出现错误提示时,可以对idea进行如下设置。

同样的步骤再设置下spring-aop.main。

至此就彻底构建成功!

2、用idea配置的gradle进行下载构建。

  • 配置gradle国内镜像

    在gradle安装目录下init.d文件中新建init.gradle文件并添加如下内容。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    allprojects {
    repositories {
    maven {
    url 'https://maven.aliyun.com/repository/public/'
    }
    maven {
    url 'https://maven.aliyun.com/repository/spring/'
    }
    maven{
    url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'
    }
    mavenLocal()
    mavenCentral()
    }
    }
  • idea中gradle配置

配置完后就可以直接进行构建了。

欢迎关注我的其它发布渠道