Как добавить проект в качестве зависимости к моему common.gradle? - PullRequest
0 голосов
/ 10 июня 2019

У меня есть структура проекта, которая выглядит следующим образом:

-Root Project 1
 settings.gradle
 build.gradle
 common.gradle <-Where my dependencies are declared
   -SubProject A
    .build.gradle
   -SubProject B
    .build.gradle
   -SubProject C
    .build.gradle

-Root Project 2
 settings.gradle
 build.gradle
 common.gradle
   -SubProject D
    .build.gradle

Что я хотел бы сделать, это добавить SubProject D в качестве зависимости от RootProject 1, так что SubProjects A, B и Cможет получить доступ к его классам.Что я могу изменить в сценариях сборки Root Project 1 для достижения этой цели?

В настоящее время общий .gradle объявляет зависимости примерно так:

dependencies {
     compile(group: 'com.software.core', name: 'ApplicationElements', version: '7.1.1-60')
}

Однако в данном случае это ссылка на jar из артефакта.Я бы хотел вместо этого сослаться на местный проект.

1 Ответ

0 голосов
/ 10 июня 2019

Вы используете compile для своих зависимостей. Это означает, что вы используете устаревшую версию плагина Android gradle. В более новой версии плагина Gradle введены некоторые концепции для достижения именно того, что вы хотите.

Если вы можете обновить до последней версии подключаемого модуля Android Gradle (который я рекомендую, чтобы получить другие преимущества, такие как более быстрая сборка), вы должны использовать api:

api "com.software.core:ApplicationElements:7.1.1-60" // transitively add dependencies

против

implementation "com.software.core:ApplicationElements:7.1.1-60" // do not leak module dependencies upwards

Если вы НЕ можете обновить версию подключаемого модуля Gradle, я рекомендую вам прочитать эту страницу , которая описывает зависимости как старого, так и нового стилей.

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