Gradle и мультипроектная структура
Я пытаюсь понять, как мне подойти к следующей настройке проекта:
┌Top Android Project
│
├── Project 1 - (Pure Java Modules)
│ │
│ ├── Module A1
│ ├── Module B1
│ :
│ └── Module Z1
│
├── Project 2 - (Android Libraries Modules)
│ │
│ ├── Module A2
│ ├── Module B2
│ :
│ └── Module Z2
│
└── Module - Actual Android Project
В текущей настройке у меня есть build.gradle в каждом из модулей, что я действительно ненавижу в этой настройке, так это то, что все содержимое build.gradle дублируется между модулями.
Факт в том, что я хотел бы, чтобы в большинстве из них была та же логика.Чистые модули Java'- все инфраструктурные модули, которые я хотел бы Jar вывод, JavaDoc и исходники, и развернуть в некотором удаленном хранилище (* по умолчанию).
С другой стороны, некоторые модулиЧистые модули Java«Я хотел бы иметь вторую повестку дня, например, помимо сборки по умолчанию *, я хотел бы развернуть банку с зависимостями для конкретного проекта или что-то в этом роде.
Во время строительстваАктуальный Android-проектЯ хотел бы, чтобы модули компилировались в сборке по умолчанию * и, наконец, чтобы настроить сборку по умолчанию build.gradle для всех моих проектов Android, которых довольно много, и я не хотел бы дублировать этот файл.
================================================== =============
Я думаю, что я ищу что-то вроде родительского pom Maven, но так как я не до конца понимаю, как работает Gradle, я открываю это для вас, ребята, чтобы поделиться своими мыслями ...
Принимая во внимание, что дублирование одного и того же файла сборки является (я осмелюсь сказать) недопустимым из-за того, что я мог бы захотеть изменить что-то во всей логике сборки всех модулей
Каков наилучший подход для обработки такого рода настройки?