spring源码(1)、idea编译spring源码详细教程

以下源码编译过程是本人按照官方文档实操,并结合国情对一些下载源修改为国内源,如果你是新手建议每一步都安装本教程操作,确保不会出现一些奇葩问题

  • 下载spring源码

建议去码云下载,github下载会比较慢,地址:https://gitee.com/mirrors/Spring-Framework,建议下载标签中的正式版本,我这里下载的是v5.2.0.RELEASE

  • 仓库修改为阿里云

下载源码并解压后,进入Spring-Framework目录修改build.gradle,需要修改两处:

第一处:

 repositories {
		maven { url 'https://maven.aliyun.com/nexus/content/groups/public' }
		maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter' }
	}

第二处:

maven{ url 'https://maven.aliyun.com/nexus/content/groups/public'}
maven{ url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'}
  • 下载gradle

打开Spring-Framework/gradle/wrapper/gradle-wrapper.properties查看一下gradle版本,下载对应的gradle版本,避免出现各种奇葩问题建议下载对应的版本,这个地址如果没有梯子下载会很慢,建议去:Index of /gradle/下载,我这里下载的是5.6.2版本

下载完成后解压,配置环境变量,配置GRADLE_HOME配置为gradle解压路径,配置path加入%GRADLE_HOME%\bin

避免每次编译都会去下载gradle,我们需要修改一下Spring-Framework/gradle/wrapper/gradle-wrapper.properties文件,将gradle地址修改为本地压缩包文件地址,这样就不会每次都去下载浪费时间

  • 编译源码

官方已经为我们提供了idea编译spring源码的文档,我们打开Spring-Framework/import-into-idea.md,安装文档内容一步一步进行操作

1. Precompile `spring-oxm` with `./gradlew :spring-oxm:compileTestJava`
2. Import into IntelliJ (File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle)
3. When prompted exclude the `spring-aspects` module (or after the import via File-> Project Structure -> Modules)
4. Code away

第一步:预编译spring-oxm

打开命令行,cd进入源码Spring-Framework目录执行gradlew :spring-oxm:compileTestJava,过程需要下载依赖,比较慢耐心等待即可

第二步:导入idea

在编译完oxm模块后,我将spring源码导入到idea中,File -> New -> Project from Existing Sources 选择解压的源码目录Spring-Framework,在弹出的窗口中选择gradle,点击finish,导入完成

第三步:移除spring-aspects模块 

在spring-aspects工程上右击选择Load/Unload Modules,在弹出窗口中选中spring-aspects,点击Unload,下图我已经unload了所以没有aspects模块

第四步,配置jdk版本

打开File-> Project Structure ,在modules和project中jdk版本一定要一样,不然后面编译会报:Information:java: Errors occurred while compiling module,这个错一般都是jdk版本不一致导致的

第五步 配置gradle,如图所示:

至此配置完毕,jvm参数建议调整至少 -XX:MaxPermSize=2048m -Xmx2048m -XX:MaxHeapSize=2048m,现在我们只要进行rebuild,等待就行,期间如果出错,如果你是严格按照上述步骤执行,一般都是下载问题,我们只需重新rebuild,编译完成后就可以新建测试工程进行测试,赶快开启你的源码之旅

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值