将spring源码导入进eclipse/idea

本文提供了一种将spring-source-3.2.18.RELEASE导入Eclipse和Idea的方法。首先,介绍了环境配置,包括源码、JDK和Gradle版本。在Eclipse中,通过命令行生成构建文件并导入,解决导入后可能出现的缺失jar、权限问题和测试错误。对于Idea,预编译spring-oxm模块,手动下载所需Gradle版本,然后导入项目并设置JDK版本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境准备
spring源码:spring-framework-3.2.18.RELEASE(githhub地址)
jdk版本: jdk7(spring4需要使用jdk8)
gradle: 3.1
(编译spring时会自动下载gradle,不会使用自己安装的gradle。
该spring版本源码对应的build.gradle文件中定义了编译时使用的gradle的版本,使用ctrl+f搜索一下gradleversion就看到了)
这里写图片描述

一、导入eclipse

开始
1.安装gradle,并配置环境变量
参考gradle的使用
2.配置仓库

buildscript {
	repositories {
		//Maven本地资源库
		mavenLocal()
		//阿里云仓库
		maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
		//spring仓库
		maven { url "https://repo.spring.io/plugins-release" }		
		//Maven中央资源库
		mavenCentral()
	}
	dependencies {
		classpath("org.springframework.build.gradle:propdeps-plugin:0.0.7")
		classpath("io.spring.gradle:docbook-reference-plugin:0.3.1")
	}
}

3.编译(可选)
我们只是要生成eclipse需要的工程构建文件,编不编译无所谓。这里我直接省略

4.生成eclipse构建文件,并导入
自带的import-into-eclipse.bat这个批处理程序有问题,所以还是使用原生的命令来导入。使用如下的命令

gradle eclipse -x :eclipse

这里写图片描述
需要这么长时间是因为会下载许多的依赖包。我用流量监控软件监控下载速度一直为2K/S,因此花这么长时间也可以理解。在这之前我使用自带的批处理文件来跑时,发现根本就没有下载流量消耗。

成功后,随便进入一个子工程,就会看到生成了.project,classpath和.settting,这正是eclipse所需要的。然后就可以导入了

5.导入后报错及解决
①少了spring-cglib-repack-3.1.jar
解决方法:
从网上去找一个下载。或者自己从源码中提取打包成jar,可参考网上博客
②提示rt.jar中的类受限
解决方法:
Project -> Properties -> libraries,
先 remove 掉 JRE System Library,然后再 Add Library 重新加入。
这里写图片描述
③spring-oxm中单元测试报错
直接把所有文件打个zip包了事

二、导入Idea

这部分内容是后来加的,使用的spring源码版本4.3.21。
前3步都和eclipse一样,从第4步开始。
源码中提供了import-into-idea.md文件,照着操作来即可。
步骤如下:
1.预编译spring-oxm模块
在源码根目录下执行

./gradlew cleanIdea :spring-oxm:compileTestJava

这时命令提示符会显示正在下载一个gradle-2.14.1-bin.zip文件,下载非常慢。我们可以使用Evething工具搜索一下这个名称,确定所在目录后,手动从gradle官网下载该gradle版本放到该目录即可。下载网址是:https://services.gradle.org/distributions/
然后再次执行上面的命令,这时就开始下载spring需要的依赖包了。
2.导入进idea(File->import project->import from external model->Gradle)
3.为spring源码设置jdk版本(1.8+)
4.排除spring-aspects模块(File->Project Structure->Modules)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值