我有一个包含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中,我有两个buildTypes
,release
和debug
。
Gradle如何知道将B的release
版与A的release
版以及B的debug
版与A的debug
版一起使用?