Руководство по созданию многопроектных сборок является отличной отправной точкой для понимания этой темы. Я предлагаю вам разобраться в этом. В ближайшей перспективе ответ на ваш вопрос основан на ваших отзывах вкомментарии:
Предполагая, что структура вашего проекта похожа на
testproject/A
testproject/B
testproject/C
testproject/shared_modules
, вам необходимо:
Добавить testproject/settings.gradle
со следующей записью:include 'A', 'B', 'C', 'shared_core'
Файлы build.gradle
в A, B, C
должны содержать следующее определение зависимости:
dependency compile project(':shared_core')
В качестве конкретного примера, здесь приведена конфигурация для простого многомодульного проекта с фиктивной граделкой, структура которого описана выше:
testproject / settings.gradle:
rootProject.name = 'testproject'
include 'A', 'B', 'C', 'shared_core'
testproject / build.gradle
plugins {
id 'java'
}
group 'uk.co.so.answers'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
testproject / {A, B, C} /build.gradle
plugins {
id 'java'
}
group 'uk.co.so.answers'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
compile project(':shared_core')
testCompile group: 'junit', name: 'junit', version: '4.12'
}
testproject / shared_core / build.gradle
plugins {
id 'java'
}
group 'uk.co.so.answers'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
Теперь, чтобы собрать все проекты, запустите из project root:
./gradlew clean build