Grails 4 "Static Type Checking" 错误仅适用于 Date 对象

Grails 4 "Static Type Checking" error only for Date objects

所以我正在从 Grails 3.3.x 迁移到 4.0.13。当我尝试编译我的应用程序时,当我尝试对任何日期 属性 使用 format 方法时出现编译错误。例如

class Event {
    Date startDateTime
    Date regDeadline
}

然后在我的 GSON class 我有这个

model {
    Event event
}

json {
    eventDate event.startDateTime.format("MM/dd/yyyy hh:mm a")
    regDeadline event.regDeadline.format("MM/dd/yyyy hh:mm a")
}

我得到以下编译错误

Exception in thread "main" org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
raa_domain_grid__event_gson: 10: [Static type checking] - Cannot find matching method java.util.Date#format(java.lang.String). Please check if the declared type is correct and if the method exists.
 @ line 10, column 15.
       eventDate event.startDateTime.format("MM/dd/yyyy hh:mm a")
                 ^
raa_domain_grid__event_gson: 11: [Static type checking] - Cannot find matching method java.util.Date#format(java.lang.String). Please check if the declared type is correct and if the method exists.
 @ line 11, column 17.
       regDeadline event.regDeadline.format("MM/dd/yyyy hh:mm a")

这之前没有问题。我怀疑它与 Groovy 升级到 2.5.6 有关,但我看不出那是什么问题。这发生在我的整个应用程序中。当我尝试对它们应用格式时,我所有具有日期作为属性的 类 都会抛出此错误。以上只是一个简单的例子。

刚刚发现 Groovy 2.5 中删除了 Date 辅助方法并放入另一个库 groovy-dateutil。通过将它添加到我的 Gradle 构建文件中,一切都按预期编译。