关于创建spring源码环境时遇到的缺少spring-cglib-repack-3.2.0.jar和spring-objenesis-repack-2.2.jar两个包的问题

网上有一堆的资料关于如何搭建spring源码环境。

·安装GitHub下载新版的spring源码到本地

·下载Gradle之后通过“gradle cleanIdea eclipse”命令将spring源码转换成可导入eclipse的工程

·导入足够的spring工程之后,会发现spring-core下缺少spring-cglib-repack-3.2.0.jar和spring-objenesis-repack-2.2.jar两个包


通过阅读源码发现为了避免第三方class的冲突,spring把最新的cglib和objenesis给repack了,

而且并没有提供这部分的代码在源码里,直接在jar包当中。

关于创建spring源码环境时遇到的缺少spring-cglib-repack-3.2.0.jar和spring-objenesis-repack-2.2.jar两个包的问题_第1张图片


根据package-info的提示可以到http://cglib.sourceforge.net和http://objenesis.org中下载最新的两个包,

但并不符合spring框架本身的结构。

于是找来之前下载的spring框架开发环境的spring-framework-4.2.4.RELEASE.zip,

解压当中的spring-core-4.2.4.RELEASE.jar包,分别取出/org/springframework/cglib和/org/springframework/objenesis,

关于创建spring源码环境时遇到的缺少spring-cglib-repack-3.2.0.jar和spring-objenesis-repack-2.2.jar两个包的问题_第2张图片

然后使用jar命令打包成spring-cglib-repack-3.2.0.jar和spring-objenesis-repack-2.2.jar放在spring-core工程的build/lib目录下面,

refresh以后编译成功。

关于创建spring源码环境时遇到的缺少spring-cglib-repack-3.2.0.jar和spring-objenesis-repack-2.2.jar两个包的问题_第3张图片

你可能感兴趣的:(关于创建spring源码环境时遇到的缺少spring-cglib-repack-3.2.0.jar和spring-objenesis-repack-2.2.jar两个包的问题)