Зачем Gradle нужен файл settings.gradle?
Я собираюсь конвертировать мои проекты Android из Ant в Gradle.
Моя рабочая область Eclipse очень проста:
Workspace
MyApp
MyApp-AndroidLibrary
Когда я добавляю файл build.gradle в MyApp, я хочу сослаться на мой проект библиотеки Android:
apply plugin: 'android'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
compile project(':MyApp-AndroidLibrary')
}
Когда я запускаю gradle build, возникает ошибка "Проект с пути: MyApp-AndroidLibrary» не найден в корневом проектеЯ погуглил и нашел, что мне нужно настроить "settings.gradle» файл в моем каталоге рабочей области, чтобы добавить
include ":MyApp"
include ":MyApp-AndroidLibrary"
Это выглядит слишком плохо для меня, почему Gradle нужен файл settings.gradleпочему бы просто не извлечь проекты, которые я определил в зависимостях?
И чтоinclude
действительно значит? Что, если у меня есть другое приложение и некоторые другие общие библиотеки в рабочей области, структура может выглядеть так:
Workspace
App1
App2
Library1(Used by App1 & App2)
Library2(Used only by App1)
Library3(Used only by App2)
Поскольку есть только ОДИН файл settings.gradle, мне пришлось добавить их все в settings.gradle. Это не пахнет хорошо.
И да, я могу перестроить структуру так, чтобы Library2 превратилась в дочерний каталог App1, а Library3 - в дочерний каталог App2, но как насчет Library1?
Любой комментарий по этому поводу?