Grails 4: @GrailsCompileStatic аннотация не работает
Миграция из грааля 3.3.5 -> грааля 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]);
1 ответ
Это не совсем @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.