Rol*_*ier 4 android build gradle
在多项目 Android 构建中,例如
root
+--- build.gradle
+--- settings.gradle
+--- subproject1
\--- build.gradle
\--- subproject2
\--- build.gradle
我想在任何项目 ( subproject1
、subproject2
) 构建之前执行一个生成代码的任务。代码生成任务对于所有项目都只有一次。我想把它放到根目录下build.gradle
。同样在根中build.gradle
,所有项目 ( allprojects
) 都依赖于代码生成任务。
task code_generating_task << {
println "I generate code here"
}
preBuild.dependsOn code_generating_task
Run Code Online (Sandbox Code Playgroud)
不起作用,因为 preBuild 未在 root 中定义build.gradle
。
可以像您一样直接在根项目的构建脚本中声明公共/横向任务。为了在每个子项目的preBuild
任务和此公共code_generating_task
任务之间创建依赖关系,您可以在根项目构建脚本中编写以下块:
gradle.projectsEvaluated {
subprojects{
// TODO : add a check on 'preBuild' task existence in this subproject.
preBuild.dependsOn code_generating_task
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2205 次 |
最近记录: |