当我尝试在Groovy in-operator解释中使用以下代码片段时,出现了VerifyError。你们知道吗?
代码和控制台输出如下。
class Hello extends ArrayList {
boolean isCase(Object val) {
return val == 66
}
static void main(args) {
def myList = new Hello()
myList << 55
assert 66 in myList
assert !myList.contains(66)
}
}错误日志:
Exception in thread "main" java.lang.VerifyError: (class: Hello, method: super$1$stream signature: ()Ljava/util/stream/Stream;) Illegal use of nonvirtual function call
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:259)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:116)主题How does the Groovy in operator work?的代码来源。
更新
Groovy版本:1.8.6JVM: 1.6.0_45供应商:. OS: Linux
发布于 2014-07-23 17:06:02
看看这个。这是针对Java的,但通常的问题是,您使用了错误的库版本。这门课在那里,但版本与预期不同。
http://craftingjava.blogspot.co.uk/2012/08/3-reasons-for-javalangverfiyerror.html
您可能已经破坏了Groovy或Java的安装。
https://stackoverflow.com/questions/24916558
复制相似问题