我有一个复杂而有趣的情况:
root
|___ p1
|___ p2 // depends on p3/sp1
|___ p3
|____|___sp1
|____|___sp2
我希望能够解释这种情况。
现在我如何添加sp1作为p2的依赖? 注意所有项目都是基于gradle的。
到目前为止,在我的根setting.gradle
中,我有
rootProject.name = root
include 'p1'
include 'p2'
include 'p3'
在p2
build.gradle中,我有:
dependencies {
compile project (':p3:sp1')
}
但是这样做仍然无法解决p2中的依赖关系;关于缺少定义,我仍然会遇到错误。
我该如何解决这个问题?
暂且不说,我将如何解决sp1可能具有的其他依赖关系。就像它依赖于sp2一样,我是否需要以某种方式声明它,即使它已经在p3中解决了?
答案 0 :(得分:4)
假设项目sp1
和sp2
是项目subprojects
的{{1}},如果您愿意:
p3
然后您需要将dependencies {
compile project(':p3:sp1')
}
更改为:
settings.gradle
答案 1 :(得分:1)
只是为那些可能正在寻找的人添加答案,在您的settings.gradle中,您将拥有
include ':p1',':p2',':p3:sp1',':p3:sp2'
如果sp1依赖于sp2
然后将对sp1的gradle的依赖性添加为
dependency {
compile project(":p3:sp2")
}