Android Gradle - различия между реализацией, releaseImplementation и debugImplementation - PullRequest
0 голосов
/ 03 февраля 2019

У меня есть Android-приложение в Android Studio.Я использую Gradle Version = 4.6, Android Plugin Version=3.2.1..Он имеет модуль приложения (основной) и модуль библиотеки.

Я переименовал одну из функций класса в модуль library.После очистки и сборки модуля library, за которым следует модуль app, я получаю эту ошибку в модуле приложения: error: cannot find symbol to the renamed class function

Ниже приведен мой build.gradle (приложение):

android {
...
}
dependencies {
...
  releaseImplementation 'com.example.library:1.0.0'
  debugImplementation project(':library')
}

Если я изменил build.gradle на тот, что ниже, то все в порядке.

android {
}
dependencies {
...
  implementation project(':library')
}

Я хотел бы знать разницу между implementation, releaseImplementation и debugImplementation и как я могу использовать это в моей ситуации.

1 Ответ

0 голосов
/ 18 апреля 2019

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

Следовательно, для вашего варианта отладки вы используете debugImplementation, а для варианта выпуска вы используете releaseImplementation

Подробнее здесь: https://developer.android.com/studio/build/dependencies#dependency_configurations

Но, обратите внимание: если вам нужно использовать отдельные сборки длятогда каждый из ваших ароматов вам нужно использовать debugImplementation и releaseImplementation '

Например:

releaseImplementation 'com.test.package:my-package:1.0'

debugImplementation 'com.test.package:my-package-debug:1.0'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...