Ответ 1
Хорошо, если вы используете простой script (где вы не используете ключевое слово "def" ), указанные вами переменные будут сохранены в привязке, и вы можете получить их следующим образом:
foo = "abc"
bar = "def"
if (true) {
baz = "ghi"
this.binding.variables.each {k,v -> println "$k = $v"}
}
Печать
foo = abc
baz = ghi
args = {}
bar = def
Я не знаю простого способа перечислить переменные, определенные с ключевым словом "def", но я буду с интересом наблюдать за этим вопросом, чтобы узнать, знает ли кто-то другой.