这里我选择5.2.x版本当然也可以选择其他版本
2.下载gradle
https://services.gradle.org/distributions/
https://services.gradle.org/distributions/
根据代码版本下载适合的gradle版本
安装过程自行百度
3.修改build.gradle文件
解压zip文件后找到build.gradle文件进行编辑
添加如下代码,加快编译速度
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/'}
maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'}
4.执行gradle.bat
在源代码根目录cmd 然后输入
gradle.bat
回车
成功后在
gradle objenesisRepackJar
回车
成功后在
gradle cglibRepackJar
回车
5.用idea打开项目等待编译
6.加入自己的模块
plugins {
id 'java'
group 'com.zyj'
version '5.2.20.BUILD-SNAPSHOT'
repositories {
mavenCentral()
dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
compile (project(":spring-context"))
compile (project(":spring-instrument"))
testImplementation 'org.projectlombok:lombok:1.18.6'
test {
useJUnitPlatform()
import org.springframework.context.annotation.ComponentScan;
@ComponentScan("com.zyj")
public class MainConfig {
public class Car {
import org.springframework.stereotype.Component;
@Component
public class IndexService {
public IndexService(){
System.out.printf("hello indexService!");
public void getIndexService(){
System.out.printf("hello getIndexService");
import com.zyj.config.MainConfig;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class Main {
public static void main(String[] args) {
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(MainConfig.class);
// context.getBean(TestBean.class);
String[] names = context.getBeanDefinitionNames();
for (String name : names) {
System.out.println(name);
7.执行main方法
打印扫描到的两个类名
8.1 gradle编译中文注释乱码
在阅读spring源码的过程中我们肯定是要在上面添加注释的,但是当我添加了中文注释后再去编译发现出现了乱码问题。在网上找了几个解决方法后尝试成功解决!
1.Help-->Edit Custom VM Options...
2.在文档的最后加上
-Dfile.encoding=UTF-8
3.File-->Editor--->File Encodings
4.保存-----》重新编译问题解决!!!
8.2找不到符号: 类 AnnotationCacheAspect
1.下载AspectJ
下载地址:AspectJ Downloads | The Eclipse Foundation
选择版本后点击,然后下载即可
注意:要确保自己配置好jdk环境
到jar包存放目录cmd 然后 java -jar aspectj-1.9.4.jar 执行
一般会默认填充正确地址,如果没有填充可手动设置
安装目录可手动更改
3.为spring-aspect 工程手动添加Facets属性
File -> Project Structure
同上面给spring-aop_main添加Facets属性
4.更改编译器
Spring 框架在 github 上面的地址:https://github.com/spring-projects/spring-framework/.
Spring 源码构建参见官方文档:https://github.com/spring-projects/spring-framework/wiki/Build-from-Source.
1. 前期工作准备
开发环境:
JDK-1.8
DEA-2020.2.4
GRADLE-5.6.4
SRING-5.2.x.RELEASE
1、下载 Spr
public static void main(String[] args) {
// ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("spring-config.xml");
AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationConte
我们在学习 spring 源码的时候,有时候是需要在阅读源码的时候添加一些代码注释,或者是对源码的一些感悟,如果没有将 spring 的源码导入到 IDEA 中,单纯是通过 Maven 去阅读 jar 的形式是无法添加一些注释信息的,即便可以通过一些比如像这样的插件做到在源代码中添加注释,但还是有局限性的,首先这个插件不允许你更改源码的行数,所以你的私人注释只能写在一行里,其次导入源代码,你可以更改源代码比如说打印一些东西,都是更有助于去理解源码的。
想要研究Spring源码,那必须知道如何下载并导入IDEA。 文本记录自己在Windows操作系统下导入源码的过程,避免大家走弯路
1. 下载源码
Spring官网 https://spring.io/projects/spring-framework
Github源码下载地址: https://github.com/spring-projects/spring-framework
git 克隆地址
IDEA中调试Spring源码!!!
想要成为一名优秀的开发人员,不是光光看看“八股文”,背背面试题就好的。是要去深入了解框架源码的底层是如何实现的?用了什么设计模式?为什么要使用这种设计模式?有什么好处?当然,在此之前,去Spring官网下载源码到本地,调试源码,把它运行起来是第一步!
成功的环境 :jdk1.8.0_271/idea2019.1.3/gradle-4.4.1-bin.zip/spring-framework1-5.0.x
特别感谢借鉴的另两位博主
https://blog.csdn.net/u013713832/article/details/81227701
https://blog.csdn.net/u012977486/article/details/108724688
1.下载源代码
源码下载地址
https://github.com/spring-.
将Spring源码压缩包解压。
i、使用本地Gradle
在 \spring-framework-master\gradle\wrapper\ 路径下找到文件 gradle-wrapper.properties,文件里有五个配置,其中
很多人想通过idea学习spring源码,看起来就几步就能搞定,下载spring源码,导入idea,编译。。但是应该有很多小伙伴跟我一样折腾了好几天,各种各样报错,有的可能都放弃了;回想这几天导入spring源码,参考各种分享文章, 我试了很多,都不行,最终各种换版本,终于搞定了,中间踩的坑就不分享了,我觉得毫无意义,时间浪费在导入编译上真心不值得,再次分享成功的方法,希望对各位能有所帮助。
二 环境搭建
1:idea 版本2020.2.4
2: jdk版本1.8.0
3:gradle版本 6.8.
工欲善其事,必先利其器,研究spring源码,从导入源码开始吧。本文记录自己 Windows下 IDEA 导入源码折腾的过程。
spring源码构建参见 官方文档https://github.com/spring-projects/spring-framework/wiki/Build-from-Source
1、下载spring源码
安装git,Spring源码现在在github托管,spring官网找到github小图标,点击进入,复制spring源码地址,使用git下载,
spring源码 git地址
如果,你非要自己配置,那么在项目目录下的./gradle/wrapper/gradle-wrapper.properties中可以查看当前Spring项目所需的Geadle版本。Java开发这边很少使用到Gradle来构建项目,基本就是Maven,所以我们也不必再去下载一个全局的Gradle,配置环境变量啥的,我们直接让idea自己下载配置就行了。,我们可以在里面引入Spring的相关模块进行测试,但是因为版本原因,引入的方式与网上很多的文档大有不同。这一切办妥后,我们复制仓库链接,然后打开idea。...