groovy 日期计算报错报错:groovy.lang.MissingMethodException: No signature of method: java.util.Date.minus()

发布于 / bug飞 / 0条评论 / Tags: none / 17 次浏览

groovy 日期计算报错报错:groovy.lang.MissingMethodException: No signature of method: java.util.Date.minus() is applicable for argument types: (Integer) values: [1]

[1]groovy 日期计算:

def today = new Date()
def d1 = today - 1
println(d1.format('yyyy-HH-mm'))

[2] 报错如下:

groovy.lang.MissingMethodException: No signature of method: java.util.Date.minus() is applicable for argument types: (Integer) values: [1]
Possible solutions: find(), find(groovy.lang.Closure), is(java.lang.Object), any(), use([Ljava.lang.Object;), print(java.lang.Object)
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:70)
    at org.codehaus.groovy.runtime.callsite.PojoMetaClassSite.call(PojoMetaClassSite.java:46)
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115)
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:127)
    at tv.rr.cashrank.CashRankApplication.main(CashRankApplication.groovy:100)

[3] 解决办法,加入依赖:

<!-- https://mvnrepository.com/artifact/org.codehaus.groovy/groovy-dateutil -->
<dependency>
    <groupId>org.codehaus.groovy</groupId>
    <artifactId>groovy-dateutil</artifactId>
    <version>2.5.6</version>
</dependency>

    评论区(暂无评论)