从grails 3.3.5迁移-> grails 4.0.0.M2
我的班级已经用@GrailsCompileStatic
进行了注释,并且该版本过去在3.3.5中没有任何问题。
许多其他类也显示错误,这些错误是由groovy额外提供的,例如Date.parse()
或Date.format()
或Date.minus()
错误:
FileCommandReader.groovy: 163: [Static type checking] - Cannot find matching method java.util.Date#parse(java.lang.String, java.lang.String). Please check if the declared type is correct and if the method exists.
@ line 163, column 17.
Date expiry = Date.parse("HH:mm:ss", cols[2]);
答案 0 :(得分:0)
这实际上不是@GrailsCompileStatic
问题。 Grails 4.0使用Groovy 2.5.6。以下代码无法在Groovy 2.5.6中编译...
import groovy.transform.CompileStatic
@CompileStatic
class Helper {
void someMethod() {
Date.parse '', ''
}
}
Grails 3.3.5使用Groovy 2.4.15,并且上面的代码在Groovy 2.4.15中有效。