Gradle用group:name:version:classifier的格式作为依赖的唯一标记,不同路径下的同名模块,这四项都相同,因此在依赖解析的时候出现冲突(经常表现为循环依赖)。这被认为是个Bug,但已经存在了九年多(https://github.com/gradle/gradle/issues/847)。
三个解决方案:
1、让同名的模块在不同的group里;
2、给模块改成不同的名称(在settings.gradle里改,或者直接重命名模块的文件夹);
3、使用Gradle插件:https://github.com/SgtSilvio/gradle-structure(是一个临时的解决方案,实际上就相当于自动在settings.gradle里改模块名)。
发表回复