Как создать мультипроект в gradle? - PullRequest
0 голосов
/ 26 июня 2018

Я хочу включить мой первый проект "Component1-1-1" в мой второй проект "Component1-1", я добавил следующий синтаксис в свой файл setting.gradle:

include ':Component1-1-1'
project(':Component1-1-1').projectDir = new File(settingsDir, '../Component1-1-1')

И я добавил в свой файл build.gradle:

earlib project(':Component1-1-1')

Работало нормально, но моя проблема в том, что я не понимаю полезности ":", я пытался переместить ":" в settings.gradle:

include 'Component1-1-1'
project(':Component1-1-1').projectDir = new File(settingsDir, '../Component1-1-1')

А в build.gradle:

earlib project(':Component1-1-1')

И все работает отлично, я не знаю почему ...

1 Ответ

0 голосов
/ 26 июня 2018

Когда вы ссылаетесь на проекты в gradle внутри функций project(), вам необходимо указать имя проекта, а разделитель будет «:». То же, что '/' в Linux.

Но когда вы определяете новый проект с помощью include(), вы просто передаете относительный путь к файлу проекта, поэтому нет ':'.

Градл просто отбрасывает двоеточие в include ':Component1-1-1'. См. Определение включения в https://github.com/gradle/gradle/blob/master/subprojects/core/src/main/java/org/gradle/initialization/DefaultSettings.java

и метод «removeTrailingColon», который действительно должен называться «removeLeadingColon».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...