gpt4 book ai didi

android - 如何通过 `build.gradle` 将配置应用于嵌套模块

转载 作者:行者123 更新时间:2023-12-03 06:29:29 25 4
gpt4 key购买 nike

我有一个 gradle带有嵌套 gradle 项目的项目。如何在根目录上设置配置 build.gradle并适用于所有嵌套模块。结构如下:

 project
build.gradle
settings.gradle
sub-project
build.gradle

里面 settings.gradle ,我包括 sub-project :
include ":sub-project"

在根 build.gradle ,我有以下设置:
  android {
buildTypes {
staging {
initWith release
}
}
}

如果我手动编辑 build.gradle,它工作正常在 sub-project .我想知道如何将此设置传递给 sub-project不更新其 build.gradle
我尝试在根目录 build.gradle 上添加以下配置:
subprojects { pry -> 
android {
buildTypes {
staging {
initWith release
}
}
}
}

但收到此错误:
Unable to find a matching configuration of project :sub-project:
- Configuration 'debugApiElements':
- Required com.android.build.api.attributes.BuildTypeAttr 'staging' and found incompatible value 'debug'.

在嵌套 build.gradle 上手动添加设置效果很好,但是 subprojects方法行不通。这两种方式有什么不同?

最佳答案

里面 project/build.gradle , 使用 所有项目如下:

allprojects { prj ->

if (!project.hasProperty("android")) {
return
}

// this condition can be used to skip some project
if (prj.name == "<your-project-name-to-skip>"){
return
}

android {

...
productFlavors {
staging {
initWith release
}
}
...
}
}

如果您只想将特定设置应用于子项目。替换 所有项目子项目 .

关于android - 如何通过 `build.gradle` 将配置应用于嵌套模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53586055/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com