该字段需要一个 java.lang.String 但脚本返回了一个 java.lang.Class
This field expects a java.lang.String but the script returned a java.lang.Class
public class MyClass {
public static main(String[] args) {
def field = "Passed";
def passTime = use(TimeCategory) {
new Date() + 60.days
}
if (field.equals("Passed")) {
String newPassTime = passTime.format('M/d/yy')
return newPassTime
}
}
}
我希望输出是一个字符串,但出于某种原因,脚本正在 returning a class。
如何从这段代码中 return 一个字符串?
我的测试不支持你的输出。我试过了
if (field.equals("Passed")) {
String newPassTime = passTime.format('M/d/yy')
System.out.println(newPassTime)
System.out.println(newPassTime.getClass())
return newPassTime
}
并给出以下输出
C:\Users\athakur\Desktop\TempDump>groovy test.groovy
Apr 19, 2015 10:04:36 AM org.codehaus.groovy.runtime.m12n.MetaInfExtensionModule newModule
WARNING: Module [groovy-nio] - Unable to load extension class [org.codehaus.groovy.runtime.NioGroovyMethods]
6/18/15
class java.lang.String
所以它应该 return 一个字符串 a 而不是 java.lang.Class
。
public class MyClass {
public static main(String[] args) {
def field = "Passed";
def passTime = use(TimeCategory) {
new Date() + 60.days
}
if (field.equals("Passed")) {
String newPassTime = passTime.format('M/d/yy')
return newPassTime
}
}
}
我希望输出是一个字符串,但出于某种原因,脚本正在 returning a class。
如何从这段代码中 return 一个字符串?
我的测试不支持你的输出。我试过了
if (field.equals("Passed")) {
String newPassTime = passTime.format('M/d/yy')
System.out.println(newPassTime)
System.out.println(newPassTime.getClass())
return newPassTime
}
并给出以下输出
C:\Users\athakur\Desktop\TempDump>groovy test.groovy
Apr 19, 2015 10:04:36 AM org.codehaus.groovy.runtime.m12n.MetaInfExtensionModule newModule
WARNING: Module [groovy-nio] - Unable to load extension class [org.codehaus.groovy.runtime.NioGroovyMethods]
6/18/15
class java.lang.String
所以它应该 return 一个字符串 a 而不是 java.lang.Class
。