乐趣区

编译Spring520源码

下载 spring-framework-5.2.0.RELEASE.zip

https://github.com/spring-projects/spring-framework/releases

下载 gradle 5.6.3 按照说明配置环境变量

https://gradle.org/install/

解压 zip、查看根目录下的 import-into-idea.md

执行脚本 (windows 系统)

.\gradlew.bat :spring-oxm:compileTestJava

成功之后、使用 IDEA 打开

成功打开项目之后,我们将 spring-aspects 模块 unload

然后我们可以新建一个我们自己使用的模块

打开 project structuer

然后我们为这个新建的模块引入一些我们需要用到的 Spring 的一些 jar 包

在我们的新模块中使用 Spring 的时候、可能会出现下面的问题

java: cannot find symbol
  symbol:   variable CoroutinesUtils
  location: class org.springframework.core.ReactiveAdapterRegistry.CoroutinesRegistrar
  Error:(348, 51) java: cannot find symbol
  symbol:   variable CoroutinesUtils
  location: class org.springframework.core.ReactiveAdapterRegistry.CoroutinesRegistrar

解决办法

把这个 spring-core/kotlin-coroutines/build/libs/kotlin-coroutines-5.2.0.RELEASE.jar 引入到项目中即可

第二个可能出现的问题

Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/cglib/core/NamingPolicy        

将 spring core 中的 build/libspring-cglib-repack-3.3.0.jarspring-objenesis-repack-3.0.1.jar 引入到新增的模块中

到此为止我们就能够在新建的模块中正常的使用 Spring 了

退出移动版