我有以下适用于 Groovy 2.5.7 的代码:
import groovy.json.JsonBuilder
def name = "foo"
def builder = new JsonBuilder()
builder {
_id name
contactInformation {
telephoneNumber("12345")
emailAddress("foo@foo.com")
}
}
println builder.toString()
与 groovy 3.0.2 相同的代码返回以下错误:
当前作用域已包含名称为 name @ line 11, column 17 的变量。_id name ^ 无法解析 class _id @ line 11, column 17。_id name
将 _id 替换为 id 或 '_id' 即可解决问题
有人可以解释为什么 3.0.2 会出现此错误,而 2.5.7 不会出现此错误吗?