我们想为当前日期添加天数并以特定方式对其进行格式化。这是在 Groovy 2.4.13 中解决的,以下日期操作工作正常:
?today = new Date()+90;today.format('yyyy-MM-dd HH:mm:ss.S');
Run Code Online (Sandbox Code Playgroud)
结果:2019-12-02 08:07:15.294
在 Groovy 2.5.4 中,相同的表达式会引发此异常:
groovy.lang.MissingMethodException:无方法签名:java.util.Date.plus() 适用于参数类型:(Integer) 值:[90] 可能的解决方案:parse(java.lang.String), split(groovy. lang.Closure), use([Ljava.lang.Object;), is(java.lang.Object), wait(), clone() at Script1.run(Script1.groovy:3)
我能够在线在“Groovy 沙箱”中重现此行为:
在这里工作正常:groovy-playground(版本 2.4.1.5)在这里失败:groovyconsole(版本 2.5.7)
在这种情况下,工作的替代方案是什么?我已经阅读了一个新的 Date API,但找不到有关如何使用它的详细信息,以及日期操作(例如 + 90 天)。