缺少 grails 4 groovy 的日期增强方法

use*_*001 8 grails groovy java.util.date grails-4

在先前版本的 grails 中,我能够使用此处找到的 java.util.Date 的 groovy 增强版。

升级到 grails 4 后,所有这些方法都不会在 java.util.Date 上抛出任何方法签名。不知何故,常规添加没有被接受。

  def fdate=new Date();
  out << fdate.format("MM/dd/yyyy")
  //No signature of method: java.util.Date.format()
Run Code Online (Sandbox Code Playgroud)

Jef*_*own 15

将依赖项添加groovy-dateutil到您的build.gradle

runtime 'org.codehaus.groovy:groovy-dateutil'
Run Code Online (Sandbox Code Playgroud)

相关的扩展方法定义在https://github.com/apache/groovy/blob/master/subprojects/groovy-dateutil/src/main/java/org/apache/groovy/dateutil/extensions/DateUtilExtensions.java#L526 -L528,它在groovy-dateutil库中。

  • “为什么它被排除在标准 build.groovy 之外?” - 大多数应用程序不使用它,因此我们默认不添加它。“这种方法会影响性能吗?” - 该库本身的存在不会影响性能,但如果不使用它,则没有理由随身携带它。 (2认同)