gradle构建spring源码

参考文章

利用Gradle在Idea上构建Spring5.3.x源码(太不容易了!)
用Gradle构建spring源码项目

1.下载gradle并安装

环境说明:window11、 IDEA Community Edition 2023.3.4
官方网址: gradle官网

1.1 进入官网

点击如下位置
在这里插入图片描述

1.2 进入下载页面

第一步跳转后会进入一个新页面,该页面往下找,找到Download位置,选择Complete。该页面有很多内容,例如对jdk版本要求、gradle历史版本等等,可自行查看。
在这里插入图片描述

1.3 下载

下载文件,会得到如下zip结尾的压缩包。
在这里插入图片描述

1.4 解压

找一个喜欢的盘符解压压缩包,建议不要放在C盘。可以专门创建一个gradle文件夹,对多个版本进行统一管理。类似与maven,gradle也需要一个仓库存放项目依赖,我的仓库就是图片中gradle_repo
在这里插入图片描述

1.5 配置环境变量

右键【我的电脑】->【属性】->【高级系统设置】->【环境变量】
添加以下变量:

  • GRADLE_HOME(解压后的文件夹路径)
F:\programing\gradle\gradle8
  • GRADLE_USER_HOME(仓库的路径)
F:\programing\gradle\gradle_repo\gradle_repo8
  • Path(将gradle_home添加到全局路径中)
%GRADLE_HOME%\bin
## 有的电脑可能不支持这种方式,改成完整路径就行
F:\programing\gradle\gradle8\bin

最后验证一下,在电脑命令行工具输入以下命令gradle -v,得到以下返回信息即证明安装成功。我这里没有实际配置gradle9,还是以前安装的8。如果想要切换其他版本,只要将GRADLE_HOME与GRADLE_USER_HOME、Path路径调整一下即可。

------------------------------------------------------------
Gradle 8.11.1
------------------------------------------------------------

Build time:    2024-11-20 16:56:46 UTC
Revision:      481cb05a490e0ef9f8620f7873b83bd8a72e7c39

Kotlin:        2.0.20
Groovy:        3.0.22
Ant:           Apache Ant(TM) version 1.10.14 compiled on August 16 2023
Launcher JVM:  17.0.10 (Oracle Corporation 17.0.10+11-LTS-240)
Daemon JVM:    F:\programing\jdkvm\jdk17 (no JDK specified, using current Java home)
OS:            Windows 11 10.0 amd64

2.导入Spring源码

我个人使用的是gradle8、spring6源码

2.1 下载源码

源码前往github或者国内的gitee码云下载。建议使用git克隆的方式,压缩包下载后在实际使用中可能会遇到一些小问题。

2.2 导入idea

导入前先阅读源码中的import-into-idea.md文件。大概意思是需要先编译spring-oxmspring-core这两个模块。
在这里插入图片描述

idea的gradle设置如下:
在这里插入图片描述
项目配置如下
在这里插入图片描述

2.3 修改配置文件

build.gradle文件中,修改中央仓库地址为阿里云地址。

maven { url = "https://maven.aliyun.com/repository/central"}
maven { url = "https://maven.aliyun.com/repository/public"}

在这里插入图片描述
添加代码后,该文件右上角会出现一只小象图标,点击后项目就会自己下载对应依赖,然后就构建成功了。

在gradle目录的gradle-wrapper.properties文件中,修改构建时下载的gradle版本,避免每次都重复下载:

#distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
distributionUrl=file:///F:/programing/gradle/gradle-8.14.3-bin.zip

3. 报错与解决办法

我的办公电脑使用的是idea2020版,在构建spring6时出现了很多问题。我仅记录了两个,后面出现的问题都没能找到对应的解决方案。最终我重新下了一个社区版idea2025.2,gradle版本选择gradle-8.14.3,jdk选择jdk17,再次构建就没有任何错误了。
1.Unable to load class ‘org.gradle.util.VersionNumber’
在这里插入图片描述
解决方案:保持gradle设置的jdk版本与电脑设置的JAVA_HOME版本一致。

2.plugin [id: ‘io.spring.develocity.conventions’, version: ‘0.0.22’] was not found in any of the following sources
未能找到解决。

4.添加测试模块

右键项目new->module
在这里插入图片描述
创建完成后,修改自己模块下的build.gradle或者build.gradle.kts文件,添加阿里云仓库地址与项目依赖。

plugins {
    id("java")
}

group = "org.springframework"
version = "7.0.0-SNAPSHOT"

repositories {
	maven { setUrl("https://maven.aliyun.com/repository/central")}
	maven { setUrl("https://maven.aliyun.com/repository/public")}
    mavenCentral()
}

dependencies {
	api(project(":spring-context"))
	api(project(":spring-beans"))
	api(project(":spring-core"))
	api(project(":spring-aop"))
    testImplementation(platform("org.junit:junit-bom:5.9.1"))
    testImplementation("org.junit.jupiter:junit-jupiter")
}

tasks.test {
    useJUnitPlatform()
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值