首页 > 代码库 > 问题.spring源码转换为eclipse遇到的问题

问题.spring源码转换为eclipse遇到的问题

1.下载spring源码

2.下载安装gradle,配置环境变量(需要有java环境)

3.在spring子项目下执行命令:gradle cleanidea eclipse,会生成对应的.project及.classpath文件

4.eclipse导入project

第一步和第二步就没必要说了,在执行第三步的遇到一个如下问题:

技术分享

错误报告意思应该是:调用ProjectDependency的构造函数时传的参数与定义的不匹配。好在报告上说出了在哪里调用的:ide.gradle  line:24, 在spring目录下找到这个地方:

技术分享

显然在创建对象时传入的参数与构造函数的定义不匹配,看上面知道这个类是由gradle来定义的,所以再去确认下下gradle是怎么定义这个类的。

需要下载gradle全量包,在src目录下可以找到对应源码,所以找到这个类的定义:

技术分享

可以看到,构造函数中只要传个path就可以了,看这个注释的意思应该就是传参时的那个path。

这个时候抱着试一试的心态将,参数project(":${projectName}").path去除后,重新执行命令,很幸运,问题没有了。。。build successful。

这地方怀疑可能是gradle更新了这个函数定义,但spring却没有更新这个脚本。可能它们用的gradle的版本与我的不一样。我本地下的是gradle-4.0

技术分享

这个问题,其实就是脚本传参不对,根据提示找到对应类的定义知道应该传什么参数。其实细心一点会发现git上下的源码人家是用的gradle-3.5来构建的。

 

问题.spring源码转换为eclipse遇到的问题