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来构建的。
时间: 2024-10-10 22:06:29