我需要运行下面的 groovy 脚本来构建 JSON 模板。我遇到的问题是模板中的整数用引号引起来。从变量中去掉引号会将其视为字符串。
cat port.txt
1001
这是我的 JSON 构建器脚本
def test = new groovy.json.JsonBuilder()
test {
ports new File('ports.txt').readLines()*.trim().collect { p ->
[name: "$p-tcp", protocol: "TCP", port: "$p", targetPort: "$p"]
}
}
println test.toPrettyString()
当我运行它时,它会吐出以下内容:
{
"ports": [
{
"name": "1001-tcp",
"protocol": "TCP",
"port": "1001",
"targetPort": "1001"
}
]
}
但是我希望它像这样去掉端口和目标端口的引号
{
"ports": [
{
"name": "1001-tcp",
"protocol": "TCP",
"port": 1001,
"targetPort": 1001
}
]
}
非常感谢任何有关如何完成此任务的线索。