關於編譯源碼,作者有以下幾點感悟:
1、第一次編譯是一件很痛苦的事情,會有很多報錯,而且每個人遇到的都不一樣,所以耐心是關鍵
2、環境最好和筆者保持一致,不然可能出現以下莫名的錯誤
3、多看看報錯內容,根據報錯重新編譯對應的包,或者修改環境配置等雜七雜八的東西
4、盡量不要用eclipse編譯源碼,主要是eclipse需要安裝一堆插件,漫長的安裝插件是一件極其痛苦的事情
編譯環境:
IDEA 2019.2.4 jdk11.7 gradle5.6.3
環境安裝搭建略過
1、下載spring源碼包:https://github.com/spring-projects/spring-framework/tree/5.1.x
自己選擇下載,可以使用git 或者 zip方式下載
gradlew.bat :spring-oxm:compileTestJava
gradlew.bat :spring-core:compileTestJava
打開idea配置相關環境
選擇一個以前項目目錄打開
選擇gradle項目 finish,修改file>project structure 看看版本是否一致
然后開始漫長的等待吧,等待編譯完成,build success 之后 需要編譯 2個jar包
運行完成之后,可以編寫自己的測試類了
編寫自己的測試類,我的測試類如下
package com.hao; import org.springframework.context.annotation.ComponentScan; import org.springframework.stereotype.Component; @Component @ComponentScan("com.hao") public class AppConfig { }
package com.hao; import org.springframework.stereotype.Service; @Service public class AppService { }
package com.hao; import org.springframework.context.annotation.AnnotationConfigApplicationContext; public class AppTest { public static void main(String[] args) { AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class); System.out.println(context.getBean(AppService.class)); } }
關於gradle依賴加入spring-context即可
執行 結果如下:
至此源碼編譯完成