如何将Gradle子项目包含到复合构建中?

时间:2017-09-27 13:12:55

标签: java gradle dependency-management

我第一次尝试使用Gradle(3.5)的复合构建,我需要包含一个库,它是另一个项目的子项目(都是Java):

> gradle projects
:projects

------------------------------------------------------------
Root project
------------------------------------------------------------

Root project 'projects'
+--- ...
+--- Project ':common'    <-- this is a library I need
+--- ...

Gradle documentation仅提供单模块项目的示例,但直接指定common目录的路径(即includeBuild '../../projects/common')不是一个选项,因为它最终会产生预期的错误:< / p>

FAILURE: Build failed with an exception.
...
* What went wrong:
A problem occurred evaluating project ':common'.
> Could not find method sourceSets() for arguments [build_9fu2oyxlwh2mr0i7k6l680fpz$_run_closure1@66e1cb67] on project ':common' of type org.gradle.api.Project.

另一个合适的功能是substitutions,但我不知道如何将它应用到我的案例中。我还没有在文档中看到任何statements告诉我这样的包含是不可能的。取决于整个projects是不对的,因为它是非常重的回购。

所以问题是: 如何在Gradle组合构建中声明对某个子项目的依赖?

0 个答案:

没有答案