Необязательный параметр в Groovy Script

У меня есть скрипт, который просто делает

// TODO: assign default value if not defined
println optionalParameter

Когда я вызываю это используя:

new GroovyShell(new Binding([optionalParameter: 'text'])).evaluate(script)

это работает отлично. Но если я запускаю его без параметра, как показано ниже:

new GroovyShell().evaluate(script)

это терпит неудачу с MissingPropertyException,

Как я могу назначить значение по умолчанию для optionalParameter так что я не понимаю MissingPropertyException ?

1 ответ

Добавление этого кода в скрипт работает для меня:

String value
if (binding.hasVariable('optionalParameter')) {
    value = binding.getVariable('optionalParameter')
} else {
    value = 'defaultValue'
}
println value
Другие вопросы по тегам