在Gradle中相互依赖的多模块子项目

时间:2018-09-12 13:36:24

标签: gradle build.gradle

我对Gradle中的多模块子项目有疑问,子probject可以相互依赖吗?

例如以下项目:

root
|___ project1
|___ project2
|___ project3

project1和project2可以相互依赖吗?

build.gradle的{​​{1}}中:

project1

dependencies { compile project(':project2') } 的{​​{1}}中:

build.gradle

我是gradle的新手,这有用吗?

1 个答案:

答案 0 :(得分:1)

  

它起作用吗?

简短答案:否

详细答案

它不是特定于Gradle的,它称为circular dependencies。这很糟糕,它阻止了编译。 project1需要project2,因此需要先构建project2project2需要project1,因此需要先构建project1。您看到问题了吗?

有许多方法可以解决循环依赖关系,具体取决于您的体系结构。在您的简单示例中,也许project1project2应该属于同一个项目。