这是脚本化的管道:
stage('check negations') {
def someVar = false
println someVar
println ! someVar
env.skip = false
println env.skip
println ! env.skip
}
我希望它能给
false
true
false
true
但它给出了
false
true
false
false
如何?
它对于非环境变量正常工作。当env.skip设置为true时,它甚至可以正常工作。怎么样?
答案 0 :(得分:2)
env变量始终是字符串。
所以当你这样做
env.skip = false
env.skip将包含字符串“ false”,其布尔值是true。
您可以这样做:
env.skip = false
println Boolean.parseBoolean(env.skip)
println ! Boolean.parseBoolean(env.skip)
此外,如果此env.skip是布尔型作业参数,则可以通过以下方式访问它
params.skip
。在这种情况下,您将获得其布尔值。