Idea 2018.3 编译spring5源码

文章目录

  • 环境准备
  • 部分相关链接地址
  • 开启building模式
  • 将spring5.0.x源码导入IDEA
  • 等待idea build完成 。拼网速的时候到了。
  • 当项目构建完成之后,便可开始编译,直接在moudle中Run All Tests即可
  • 测试我们编译好的spring源码构建spring项目是否可用
  • 创建测试代码类,如下图
  • [Sprng 5.0源码下载](https://download.csdn.net/download/dianhua18682411831/12738454)

环境准备

1、spring源码版本:spring-framework-5.1.x;
2、gradle版本:gradle-5.4;
3、jdk版本:1.8.0_112;
4、IntelliJ IDEA版本:2018-03;
5、os 版本 : windows 10;

部分相关链接地址

1、阿里云仓库:https://maven.aliyun.com/repository/spring-plugin
2、gradle下载地址:https://services.gradle.org/distributions/
3、spring5.1.x源码下载:https://github.com/search?q=spring-framework&type=

开启building模式

1、因为spring项目是由gradle构建,所以我们先下载gradle,直接官网下载就好,推荐下载4.2以上的版本。不然会发生很多莫名其妙的问题,我这里直接下载的5.4的版本。
Idea 2018.3 编译spring5源码_第1张图片
2、配置gradle环境变量,过程类似jdk环境变量配置,小白可自行百度,最终出现如下效果,即OK。
Idea 2018.3 编译spring5源码_第2张图片
3、去官网下载spring源码,克隆下来。这个步骤是个程序员,基本都会。就不在细说Idea 2018.3 编译spring5源码_第3张图片
4、idea 做gradle相关的配置。如下图
相关的内存参数配制。: -XX:MaxPermSize=2048m -Xmx2048m -XX:MaxHeapSize=2048m
Idea 2018.3 编译spring5源码_第4张图片

将spring5.0.x源码导入IDEA

1、源码导入方式:然后选择gradle 选择源码地址就好
Idea 2018.3 编译spring5源码_第5张图片
2、将repositories maven的地址改为:https://maven.aliyun.com/repository/spring-plugin
Idea 2018.3 编译spring5源码_第6张图片
3、修改jar包的版本。因为可能在阿里云的仓库 会找不到这几个地址:

Idea 2018.3 编译spring5源码_第7张图片
4、先将其注释掉,不编译它,避免一些第三方依赖影响我们的进度
Idea 2018.3 编译spring5源码_第8张图片

等待idea build完成 。拼网速的时候到了。

可能需要十多分钟 才能构建完成。其中会遇到一些问题!
如下,这个就是jdk版本的问题。你可能需要更换 jdk的版本

Idea 2018.3 编译spring5源码_第9张图片
2、No such property: values for class: org.gradle.api.internal.tasks.DefaultTaskDependency 的问题。需要将文中最后三行替换为:
def deps = compileGroovy.taskDependencies.immutableValues + compileGroovy.taskDependencies.mutableValues compileGroovy.dependsOn = deps - "compileJava" compileKotlin.dependsOn(compileGroovy) compileKotlin.classpath += files(compileGroovy.destinationDir)

Idea 2018.3 编译spring5源码_第10张图片
3、系统编译完成以后 可能还会出现,这种红色的报错信息!
Idea 2018.3 编译spring5源码_第11张图片
4、我们需要找到 报错项目下的jar 将它先注释掉即可
Idea 2018.3 编译spring5源码_第12张图片
5、若还有其他的 红色错误。方法也是一样的。我们先把它注释掉。先构建完成再说

当项目构建完成之后,便可开始编译,直接在moudle中Run All Tests即可

Idea 2018.3 编译spring5源码_第13张图片
如果出现依赖报错。只需要执行以下命令,就会自动下载jar包。
Idea 2018.3 编译spring5源码_第14张图片

测试我们编译好的spring源码构建spring项目是否可用

编译spring 源码,因为spring是互相依赖。所以我们只用编译context就可以了。先执行clean 然后在build就OK了。
Idea 2018.3 编译spring5源码_第15张图片

选中项目。右键,新建一个module 然后选中gradle构建出一个模块。
Idea 2018.3 编译spring5源码_第16张图片
2、在gradle的配置文件中 引入如下依赖:
添加compile project(":spring-context")

Idea 2018.3 编译spring5源码_第17张图片

创建测试代码类,如下图

Idea 2018.3 编译spring5源码_第18张图片

1.Test.java文件
/**
 * 测试spring源码编译结果是否可用
 */
public class Test {
	public static void main(String[] args) {
		AnnotationConfigApplicationContext ac
				= new AnnotationConfigApplicationContext(AppConfig.class);
		UserDao userDao = ac.getBean(UserDao.class);
		userDao.printInfo();
	}
}

2.UserDao.java文件
@Repository
public class UserDao {
	public void printInfo(){
		System.out.println("创建Spring项目成功啦阿拉阿拉!!!!!!!!");
	}

}


3.AppConfig.java

@Configuration
@ComponentScan("com.dao")
public class AppConfig {
}

执行测试代码啊 输出如下!
Idea 2018.3 编译spring5源码_第19张图片

Sprng 5.0源码下载

贡献给,实在遇到太多问题。无法完成编译的童鞋!小编也是呕心沥血 经历了 一天才终于编译好。

你可能感兴趣的:(spring源码学习,java,spring,gradle)