Gradle вложенные мульти-проекты с зависимостями компиляции проекта

У меня та же проблема, что и у этой Gradle Multi-Module Project Setup, но я должен использовать зависимости компиляции проекта для сборки и не могу использовать библиотечное (jar) решение для зависимостей, которое было дано в качестве решения в предыдущем вопросе.

Root
|__ P1
|   |_ PP1
|   |_ PP2
|
|__ P2
   |_PP3
   |_PP4

PP1, PP2, PP3 и PP4 являются подпроектами, каждый из которых имеет свои собственные файлы build.gradle; P1 и P2 также имеют файлы build.gradle и settings.gradle.

Как я могу объявить PP1 как зависимость компиляции в файле build3gradle PP3?

apply plugin: 'java' 
dependencies {
    compile('P1:PP1') //does not work
    compile group: 'P1', name: 'PP1', version: '0.1' // jar library dependency not an option

    compile('{ant_target}')? //follow up question - an ant target as a dependency
}

Я использую Gradle v1.2

1 ответ

Решение

У сборки может быть только один settings.gradle файл. Если предположить, settings.gradle находится в корневом каталоге и включает в себя такие проекты:

include "P1:PP1"

Вы можете добавить зависимость компиляции следующим образом:

dependencies {
    compile(project(":P1:PP1"))
}

Для получения дополнительной информации см. Главу "Сборки нескольких проектов" в Руководстве пользователя Gradle.

Другие вопросы по тегам