Problemas con Groovyshell y PropertyMissing ()
-
30-10-2019 - |
Pregunta
Tengo problemas para usar propertyMissing()
Juntos con GroovyShell
Tengo los archivos
/**
* @file FooScript.groovy
*/
abstract class FooScript extends Script {
def propertyMissing(String name) {
"This is the property '$name'"
}
def propertyMissing(String name, value) {
println "You tried to set property '$name' to '$value'"
}
}
y
/**
* @file FooScriptTest.groovy
*/
import org.codehaus.groovy.control.*
def fooScript = """\
foo = 'bar'
println foo"""
def conf = new CompilerConfiguration()
conf.setScriptBaseClass("FooScript")
def sh = new GroovyShell(conf)
sh.evaluate fooScript
Cuando corro FooScriptTest.groovy
Espero la salida
Intentaste configurar la propiedad 'foo' a 'bar'
Esta es la propiedad 'foo'
Lo que obtengo es:
bar
Parece mi propertyMissing()
se anula por el predeterminado. ¿Cómo evito esto?
No hay solución correcta
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow