如何在Map中引用变量,当我这样做的时候,我只得到字面字符串dcihub_sonar_binaries,而我期望else规则的结果是dcihub_sonar_binaries的值。
dcihub_sonar_binaries = '$WORKSPACE/tenants/dcihub/ui.apps/target/,$WORKSPACE/tenants/dcihub/ui.config/target/,$WORKSPACE/tenants/dcihub/ui.content/target/'
def CODEBASE = "dcihub"
def SonarValues = [:]
if (CODEBASE == "platform") {
SonarValues = ["platform": [platform_sonar_exclusion, platform_sonar_binaries]]
} else {
SonarValues.put(CODEBASE, "${CODEBASE}_sonar_binaries")
}
return SonarValues
}
当我打印出来的时候。这就是输出。
dcihub_sonar_binaries
预期产出:'$WORKSPACE/tenants/dcihub/ui.apps/target/,$WORKSPACE/tenants/dcihub/ui.config/target/,$WORKSPACE/tenants/dcihub/ui.content/target/
'
1条答案
按热度按时间yrdbyhpb1#
我不知道变量是如何/在哪里声明的。
如果它是函数/方法内部的局部变量,那么就没有办法引用它--考虑一下在map中存储所有需要的值。
如果它是脚本/对象变量/属性,那么这应该可以工作:
除了
this
之外,还可以存在声明变量/属性的任何对象。例如,此脚本打印
Hello world!
但这会失败,因为hello_world将成为隐藏的
run()
函数的一部分: