允许子项目依赖于其他子项目时的CircularReferenceException

时间:2016-02-18 04:28:34

标签: gradle build build.gradle

在我的项目中,我有6个子项目,所有子项目都相互依赖。

subprojects {
    apply plugin: 'java'

    repositories {
        mavenCentral()
    }

    dependencies {
        compile project(":common")
        compile project(":def")
        compile project(":fs")
        compile project(":game")
        compile project(":network")
        compile project(":parser")

        ... remainder omitted
    }

}

在我的主项目build.gradle文件中声明这样的依赖项时,我得到一个循环依赖项错误。

我也尝试在自己的build.gradle中声明每个子项目所依赖的依赖项,只是为了接收相同的错误。

我有什么遗失的吗?

1 个答案:

答案 0 :(得分:2)

你正在努力实现这样的磨损:

Proj A:

dependencies {
        compile project(":B)
        compile project(":C")
}

Proj B:

dependencies {
        compile project(":A)
        compile project(":C")
}

Proj C:

dependencies {
        compile project(":B)
        compile project(":A")
}

CircularReference 如果A取决于B,B不能取决于A。

你不能这样做。