我需要使用变量作为字符串的一部分,用于处理gstring中的另一个变量。
在syntesys中,我想做的是:${${it}_checkout}
整个代码行将是:
def checkouts = repos.collect{"${it} = ${${it}_checkout} "}
repos
是要结帐的存储库列表
每个仓库都有一个名为<repo>_checkout
的属性。
例如,如果我有两个名为foo
和bar
的回购,我会有两个名为foo_checkout
和bar_checkout
的变量,其中包含分支到检查。
我试图构造以下字符串:&#34; foo = $ foo_checkout bar = $ bar_checkout&#34;。
这将被翻译为&#34; foo = master bar = dev&#34;
有办法吗?
答案 0 :(得分:1)
是的,只是这样做:
def checkouts = repos.collect{ "$it = ${it}_checkout" }
或者,根据您声明属性的方式,您可以执行以下操作:
root_checkout = 'woo'
repo_checkout = 'yay'
['root', 'repo'].collect { r -> "$r = ${getProperty(r + '_checkout')}" }