在我们的构建中,我们在一个公共位置计算环境变量。
tasks.withType(Test) {
environment << project.environmentVars
}
实际的变量当前急切地加载到其他构建脚本中:
ext.environmentVars = [:] as Map<String, String>
// ... setting many variables ...
某些设置需要调用命令以获取正确的值来插入,所以我想推迟工作。
我知道我可以做到:
tasks.withType(Test) {
doFirst {
environment << project.environmentVars
}
}
但是我担心这可能会使任务没有将环境视为输入,因此不断变化的环境可能无法运行测试。
理想情况下,我想做的是:
tasks.withType(Test) {
environment << { project.environmentVars }
}
但这当然是一个错误。
有正确的方法吗?