kotlin - Kotlin DSL Android Gradle 任务
问题描述
我正在为我们的 android 项目将所有 Groovy 脚本迁移到 Kotlin DSL。我们的构建风格如下所示:
buildTypes {
getByName("debug") {
isDebuggable = true
signingConfig = signingConfigs.getByName("default")
}
create("qa") {
isShrinkResources = true
isMinifyEnabled = true
isUseProguard = true
proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro")
}
getByName("release") {
isShrinkResources = true
isMinifyEnabled = true
isUseProguard = true
proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro")
}
}
因此,如果我想从命令行运行 taks
./gradleW aDebug
./gradleW aQa
./gradleW aRelease
现在,当前的问题是,当我尝试将所有任务组合到下面的一个中时,代码在 Groovy 中的样子,但不确定如何在 Kotlin DSL 中编写。感谢你的帮助
//This is in Groovy
task assembleAll(dependsOn:
[
'assembleQa',
'assembleRelease',
])
你能告诉我它在 Kotlin DSL 中的样子吗?我已经尝试了以下方法,但到目前为止还没有工作。
task("assembleAll") {
dependsOn("assembleQa")
dependsOn("assembleRelease")
}
解决方案
如果您要将脚本从 Gradle Groovy 转换为 Kotlin DSL:
tasks.register("assembleAll") {
dependsOn("assembleQa", "assembleRelease")
}
推荐阅读
- ios - 使用按钮以编程方式更改方向 - iOS
- sql - 尝试在具有相同“名称”时融合行
- javascript - 如何导出组件类和该类方法?
- javascript - 检查函数是否被创建
- go - 使用反射设置接口类型的值
- javascript - Reactjs TypeError:无法获取未定义或空引用的属性“字符串”匿名函数
- reactjs - 在简化文件中反应错误处理
- hadoop - Hive - 如何为空的分区显示 0?
- c# - 无法使用 Google Sheets API 和 C# WPF 从 Google Sheet 访问数据 - 无需登录
- spring - 无法在 Junit/Mockito 中模拟值