Spring源码Gradle构建

第一步 从github上拉取spring源码(下载zip)(jdk版本1.8)

网址:https://github.com/spring-projects/spring-framework

选择一个想要的源码分支

选择源码分支

这里注意 我用的是压缩包而不是直接通过url来下拉项目

下好之后解压 不要急着导入到idea中

第二步 根据配置文件配置gradle环境

在文件夹中找到这个文件打开后查看需要的gradle编译版本

按照对应版本为环境变量配置

gradle网址:https://gradle.org/releases/  配置是和java一样的模式 配置完记得gradle -v检查是否生效

第三步 修改下载源

打开下面文件

增加一条这个即可 maven { url "https://repo.spring.io/libs-spring-framework-build" }

如果不行再增加其他的配置(ps:一般没什么必要)

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

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

//新增spring插件库

maven { url "https://repo.spring.io/plugins-release" }

第三步 导入项目

图略 

打开idea--> import project-->gradle项目

等待构建,可能会失败重新构建几次就好了

注:目前从github上下的都是带.git的文件,编译完成后可能会出现git command找不到而报错

只需要将项目添加进git就可以解决,并不需要连接到远程你自己的仓库。

第四步 编译项目

先对spring-core、spring-context进行编译

已spring-core为例双击complierTestJava进行编译

第五步 配置aspectJ满足aop,aspectJ模块

下载AspectJ

https://www.eclipse.org/aspectj/downloads.php


下好后根据提示安装

安装好了会出现一个aspectj1.9的文件夹

idea配置aspectj

按图所示配置---->apply

配置完成后点击build构建一下,aop和aspectj模块就不会报错了

第六步 写自己的模块

建立maven项目

开始导入依赖

选中自己的模块,在Dependencies栏进行选择

选择完后记得勾选上全部,最后Apply一下

在自己的模块中写一个类打上注解,有Spring自己的注解出现时就证明成功了

当写好一个测试类运行的时候可能会报其他模块的错误,原因是有的模块没有手动编译,找到这些出错的模块在右侧gradle中点击complierTestJava编译一下就可解决问题

第七步 优化spring源码项目

由于BuildandRun是Gradle, 导致在自己学习测试时构建编译很慢


设置中如图设置即可


设置之后有些会报错,是因为有些模块在依赖的设置中使用的optional而不是complie

目前context下会出现问题,将模块中.gradle文件中出错的依赖改为complie后重新对该模块进行编译也就是执行(双击)complierTestJava(ps:看报错信息是在哪一个模块下,再进行修改)


以上都执行成功后,就可以和日常项目一样可以很快启动


如再有其他问题发在评论区(ps:按步骤,一步步来)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. 什么是gradle? 很高兴能向大家介绍Gradle,这是一个基于JVM的富有突破性构建工具。 它为您提供了...
    eSky阅读 697评论 1 0
  • 1、介绍 mac下阅读spring源码,由于spring源码是gradle构建,这里记录一下源码的构建方式。基本信...
    Geroge1226阅读 969评论 0 1
  • 一、前言   说一说我要写这篇文章的初衷吧,前段时间有小伙伴在微信群求教怎样构建spring源码,他在网上找了n个...
    庸人视角阅读 773评论 0 3
  • Spring的前世今生 相信经历过不使用框架开发Web项目的70后、80后都会有如此感触,如今的程序员开发项目太轻...
    javacoo阅读 457评论 0 2
  • 久违的晴天,家长会。 家长大会开好到教室时,离放学已经没多少时间了。班主任说已经安排了三个家长分享经验。 放学铃声...
    飘雪儿5阅读 7,784评论 16 22

友情链接更多精彩内容