Gradle子项目对共享代码的依赖性

时间:2016-03-02 15:41:32

标签: java scala gradle dependencies

假设我在settings.gradle:include 'a', 'b', 'c', 'shared'

中有这个

当然,我希望a,b和c都依赖于共享',所以我将它放入gradle.build:subprojects { dependencies { project(":shared") }}

然而,这不起作用:尝试编译它失败,因为循环依赖('共享'取决于它自己)。

有没有办法解决这个问题,还有其他必须明确列出每个子项目的依赖关系吗?

1 个答案:

答案 0 :(得分:2)

您可以根据项目名称执行条件。

subprojects { 
    if (!project.name.contains('shared')) dependencies { compile project(":shared") }
}

(Haven未经过测试,但某些形式应该可行)