查看以下Groovy代码示例:
class PersonCreator {
static void main(String[] args) {
println createPerson('Smith')
}
static createPerson(String aLastname) {
new Person() {
final String firstname = 'John'
final String lastname = aLastname
}
}
}
interface Person {
String getFirstname()
String getLastname()
}
当我尝试运行时,抛出异常
Exception in thread "main" groovy.lang.MissingPropertyException: No such property: aLastname for class: PersonCreator
完全相同的代码在Groovy 2.3.2中运行良好,但在版本2.3.3及更高版本中它失败了。我应该在Groovy JIRA中提出一个错误还是一个功能?
编辑:出于某种原因,添加了@CompileStatic
的上述示例编译失败了Error:(1, 1) Groovyc: [Static type checking] - Unimplemented node type