指向另一个模块的实现时,CustomMessageMissingMethodException

时间:2018-08-19 17:15:38

标签: android gradle

我有一个包含3个模块的Android项目,我们称它们为A,B和C。

A取决于B和C。

我正在尝试打包该项目的apk,并创建发行版和调试版。

目前,我点击了this bug,对于调试版本,BuildConfig.DEBUG仅在A中适用,而在B和C中则不适用。

根据那里的答案之一,我试图通过添加到B和C的build.gradle来解决此问题:

android {
    publishNonDefault true
}

并到达A的build.gradle

dependencies {
    implementation project(path: ":B")
    implementation project(path: ":C")
}

但是我遇到此错误:

  

org.gradle.api.GradleScriptException:评估时发生问题   项目':A'由:   org.gradle.internal.metaobject.AbstractDynamicObject $ CustomMessageMissingMethodException:   找不到参数的方法Implementation()   [DefaultProjectDependency {dependencyProject ='项目':B',   配置类型为'default'}]   org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler。

我的问题是双重的:

1。为什么会出现此错误?

2。implementation project(path: ":B")如何工作?

在A中,我有两个buildTypesreleasedebug。 Gradle如何知道将B的release版与A的release版以及B的debug版与A的debug版一起使用?

0 个答案:

没有答案