用Gradle构建spring源码项目

发布时间 2023-03-22 21:14:19作者: 小小白不白

版本:
JDK 1.8
Gradle :gradle-5.6.3-all.zip
Spring 5.2.1
1.配置JDK环境和配置Gradle环境,这个就不说了网上一大片都是。
2.下载源码:git clone -b 5.2.1 https://github.com/spring-projects/spring-framework.git 这个命令就可以,也可以去github或者Gitee上载ZIP包
3.下载spring源码包中,配置gradle.properties把原来下载Gradle的那行代码注释掉,重新写上自己下载下来的Gradle zip包,这样可以避免重复下载Gradle包

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=file:///d:/Environment/gradle-5.6.3-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
4.打开build.gradle文件(这个就相当于是maven的pom文件),在文件头部加上Spring插件库
1).buildscript {
repositories {
maven { url "https://repo.spring.io/plugins-release" }
}
}

2).然后继续寻找,找到如下代码段,添加对应代码,配置阿里云镜像加速依赖和Spring插件库

maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter' }
maven { url "https://repo.springsource.org/plugins-release" }
5。在导入Idea之前,首先我们要用cmd进入到Spring目录,然后用gradlew :spring-oxm:compileTestJava将spring 转成 IDEA 可以导入的工程结构。

6.配置idea中gradle环境
打开Idea,配置Gradle环境,【File】->【Settings】,设置Gradle,Gradle user home这个目录这里我设置的刚 安装的gradle目录。如果不设置的话,它默认是C:\Users\用户名.gradle,这个目录你就可以认为相当于 是我们的本地的maven仓库,gradle编译项目所依赖的jar都会下载后放入这个目录中。JVM默认我这里就是jdk8,jdk至少就是jdk8。

7.导入idea中 导入时会有下载依赖,需要时间等待



报错处理(未遇到,可跳过)
遇到这个问题时:POM relocation to an other version number is not fully supported in Gradle : xml-apis:xml-apis:2.0.2 relocated to xml-apis:xml-apis:1.0.b2.
尝试在项目根目录下的build.gradle文件中添加如下代码,指定xml-apis的版本为1.0.b2
configurations.all {
resolutionStrategy {
force 'xml-apis:xml-apis:1.0.b2'
}
}
build完成后可以创建自己的moudle来测试
采用gradle创建,点击下一步即可

创建成功,需要在自己创建的moudle中找到build.gradle,在其中添加依赖

dependencies {
//添加完要构建一下,否则代码中无法引用,注意不要忘了
compile(project(":spring-context"))
compile(project(":spring-beans"))
compile(project(":spring-core"))
compile(project(":spring-aop"))
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
}

创一个user实体

创建javaConfig

创建测试类

启动测试类,如果出现success,有输出就证明成功了