You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@groovy.apache.org by MG <mg...@arscreat.com> on 2017/12/15 01:57:36 UTC
@CompileStatic - Groovyc: Expected parameter of type java.lang.Object
but got java.lang.Class
I got a strange @CompileStatic build error today, of which i am not sure
whether it is expected behavior with a confusing error message, or an
error in Groovy, so I post it here for comments before creating a ticket:
@CompileStatic*
class *GroovyReflection {
* /**
* throws:*
* Error:(20, 104) Groovyc: Expected parameter of type
java.lang.Object but got java.lang.Class*
* Error:(20, 119) Groovyc: [Static type checking] - Cannot find
matching method
at.gv.bmlv.groovyutil.reflection.GroovyReflectionClass#createFromClass(java.lang.Object).
Please check if the declared type is right and if the method exists.*
* */*
* final *Map<Class, GroovyReflectionClass> *classToReflectionClassMap
*= [:].withDefault { *
final *Class clazz -> GroovyReflectionClass./createFromClass/(clazz)
}
* // works*
* final *Map<Class, GroovyReflectionClass> *classToReflectionClassMap
*= ([:] *as *Map<Class, GroovyReflectionClass>).withDefault {
***final *Class clazz -> GroovyReflectionClass./createFromClass/(clazz)
}
}
Cheers,
mg