Android Gradle-实现,releaseImplementation和debugImplementation之间的区别

时间:2019-02-03 06:35:07

标签: android android-gradle

我在Android Studio中有一个Android应用。我正在使用Gradle Version = 4.6, Android Plugin Version=3.2.1.。它具有一个应用程序模块(主)和一个库模块。

我重命名了library模块中的类函数之一。清理并构建library模块,然后构建app模块之后,我在应用程序模块中遇到此错误:error: cannot find symbol to the renamed class function

下面是我的build.gradle(app):

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

如果我将build.gradle更改为以下内容,则一切正常。

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

我想知道implementationreleaseImplementationdebugImplementation之间的区别,以及在我的情况下如何使用它。

1 个答案:

答案 0 :(得分:0)

implementation将依赖项应用于所有构建变体。相反,如果只想声明特定构建变体源集或测试源集的依赖关系,则必须大写配置名称,并在其前面加上构建变体或测试源集的名称。

因此,对于您的调试版本,请使用debugImplementation;对于发布版本,请使用releaseImplementation

在此处了解更多信息:https://developer.android.com/studio/build/dependencies#dependency_configurations

但是,请注意:如果您必须为每种口味使用不同的版本,则需要使用debugImplementationreleaseImplementation'

例如:

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

debugImplementation 'com.test.package:my-package-debug:1.0'