环境 jdk1.8或者jdk11 spring-framework源码里面自带gradle 执行会为你自动配置
官网地址
https://spring.io/projects/spring-framework
1、打开spring官方 githubhttps://github.com/spring-projects/spring-framework/tree/v5.2.0.RELEASE下载5.2版本的spring源码解压
2、修改目录build.gradle文件加入阿里云远程仓库
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
}
3、预编译spring-oxm
与./gradlew :spring-oxm:compileTestJava
进入目录windows执行 gradlew :spring-oxm:compileTestJava 如图 下载完成
3、导入IntelliJ(文件->新建->现有源项目->导航到目录->选择build.gradle)
接着导入idea 如果是老版的ide选gradle 如2019版本 如果是新版的直接open如2020版本
等待下载完成
4、出现提示时,排除spring-aspects
模块(或在通过“文件”->“项目结构”->“模块”导入后)
右键 spring-aspects项目
选中load/upload moduls...
点击upload
这样就ok了
5、拿走代码
这样就完成编译了
遇到的问题
如果引用包引入不进 需要执行
gradlew -a:spring-core:test
gradlew -a:spring-oxm:test
已知的问题
spring-core
并spring-oxm
由于重新打包的依赖关系而应进行预编译。请参阅*RepackJar
构建中的任务和https://youtrack.jetbrains.com/issue/IDEA-160605)。spring-aspects
由于对IntelliJ IDEA未知的方面类型的引用而无法编译。有关详细信息,请参见https://youtrack.jetbrains.com/issue/IDEA-64446。同时,可以从项目中排除“弹簧方面”,以避免编译错误。- 虽然JUnit测试是通过Gradle从命令行传递的,但是从IntelliJ IDEA运行时某些测试可能会失败。解决这一问题正在进行中。如果尝试从IntelliJ IDEA中运行所有JUnit测试,则可能需要设置以下VM选项,以避免出现内存不足错误:-XX:MaxPermSize = 2048m -Xmx2048m -XX:MaxHeapSize = 2048m
- 如果您在IDE中调用“重建项目”,则必须再次生成该
spring-oxm
模块的一些测试资源(./gradlew :spring-oxm:compileTestJava
)