标签:构建 hub ext pre spring compile pad gap 技术
本文记录springframework源码构建的基本流程,环境是基于JDK 1.8.0(好像1.8以下会比较麻烦)IDE是Idea 2019 2.2(最好是2019版的2.x)
1、下载gradle https://www.jianshu.com/p/d9329117aa2f 目前安装的版本是4.9
2、配置环境变量
3、gradle -version
4、配置好环境后可以去设置idea,以便后期编译spring项目时使用gradle

前往GitHub下载spring-project源码。
File - New - Project from Existing Source... - 选择本地源码文件的目录

1、编译spring-context生成out文件(这里有的时候idea在导入项目时就编译好了有的时候没有编译);

2、编译spring-core生成out文件,这个项目也可以这样编译,在Gradle工具栏目中执行 compileJava

这里编译会去下载一个CGlib相关的jar包,在5.x时没有携带这个包。如果在此步之前进行使用项目的话会报错,应该就是没这个包导致的。
如果到此都顺利的话应该就没啥问题了。
3、当然也可以操作Gradle工具上的刷新按钮,但是会很慢,以上两步编译完了应该就可以了,这个Reimport会很慢

1、创建一个新模块
右键spring总项目 - new - mould

2、修改build.gradle文件
compile(project(":spring-context"))

3、创建自定义类
创建一个自定义的类来添加@Component注解是否能引入成功
创建一个test类看是否能添加bean成功
AppConfig类
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;
@Configuration
@Component //这个注解主要是为了检测能否添加注解
public class AppConfig {
}
test类
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class test {
public static void main(String[] args) {
AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class);
System.out.println(ac.getBean(AppConfig.class));
}
}
这里如果出现报错,比如xxx.java中找不到xxx符号,这时可以去找到这个类的项目模块重新编译下,这样能解决80%的异常。
标签:构建 hub ext pre spring compile pad gap 技术
原文地址:https://www.cnblogs.com/tongxuping/p/12123566.html