使用idea和gradle编译Spring源码

spring 专栏收录该内容
1 篇文章 0 订阅

前言

最近想进一步了解spring框架的底层代码,所以自己按照网上资料用IEDA和gradle搭建spring源码编译,在这过程中遇到很多的坑,自己花了很长的时间解决,所以我想写这篇博客帮助一些初学者避免不必要的踩坑。

步骤:

1.下载gradle,注意版本不要太高,我最开始下的版本过高(gradle-5.2),导致出现一些令人头大的错误。花了很长时间,错误也没有解决,所以我就下了一个gradle-4.1这个版本。

  • 直接下载bin压缩包即可
    在这里插入图片描述
  • 下载网站:https://services.gradle.org/distributions/
  • 下载链接

2.解压gradle安装包,gradle环境变量配置

  1. 右击此电脑选择属性
    在这里插入图片描述
  2. 进入高级系统设置
    在这里插入图片描述
  3. 进入环境变量
    在这里插入图片描述
  4. 在系统变量中选择path并进入
    在这里插入图片描述
  5. 点击新建并将路径复制
    在这里插入图片描述
  6. 检验安装是否成功
    • 在命令行输入gradle -v即可
      在这里插入图片描述

在github上下载spring-framework-5.0.x压缩包

  • 下载网站:https://github.com/spring-projects/spring-framework/tree/5.0.x

  • 下载链接

  • 选择spring-framework版本
    在这里插入图片描述

  • 下载
    在这里插入图片描述

在idea中打开spring-framework文件

  1. 打开IEDA,选择open
    在这里插入图片描述
    2.选择解压后的spring-framework文件后
    在这里插入图片描述
  2. 接下来是一个漫长的等待过程
    在这里插入图片描述
  3. 下载结束后,编译文件,点击Build -> Build Project
    在这里插入图片描述
  4. 由于缺少2个jar包,所以编译会出错
    在这里插入图片描述
  5. 解决方法
  • 点击idea右侧的gradle
    在这里插入图片描述
  • 找到cglibRepackJar和objenesisRepackJar,然后点击
    在这里插入图片描述
  1. 然后在重新编译,步骤4操作,如果出现Aspect这类错误,可忽略。

测试环境是否成功

  1. 创建一个Module
  • 第一步
    在这里插入图片描述
  • 第二步
    在这里插入图片描述
  • 第三步
    在这里插入图片描述
  • 然后就一直往下就行
  1. 创完后会有这样一个目录
    在这里插入图片描述
  2. 在build.fradle中导入spring核心包
    在这里插入图片描述
  3. 创建一个包,和两个类
    在这里插入图片描述
package com;

public class Test {
	public void hello(){
		System.out.println("安装成功");
	}
}

package test;

import com.dao.User;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

public class Test {
	public static void main(String[] args) {
		AnnotationConfigApplicationContext annotationConfigApplicationContext = new AnnotationConfigApplicationContext();
		annotationConfigApplicationContext.register(Test.class);
		annotationConfigApplicationContext.refresh();

		Test test = annotationConfigApplicationContext.getBean(User.class);
		test.hello();
	}
}

5.执行main方法
在这里插入图片描述

大功告成!!!!!!!

  • 3
    点赞
  • 1
    评论
  • 2
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 黑客帝国 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值