4

我正在学习如何使用 daikon.Chicory 做一些不变的检测。但是在 java-examples 部分,我在这个命令之后遇到了这个错误

java daikon.Chicory --daikon DataStructures.StackArTester

我在 Windows 7 上使用 cygwin shell。

-ea -Xmx128M -javaagent:C:\cygwin\home\Will\daikonparent\daikon\java\ChicoryPremain.jar=--daikon --dtrace-file=StackArTester.dtrace.gz DataStructures.StackArTester
entered daikon.chicory.Runtime.setDtrace(.\StackArTester.dtrace.gz, false)...
java.lang.VerifyError: StackMapTable error: bad offset in method DataStructures.StackArTester.push(I)V
        at java.lang.Class.getDeclaredMethods0(Native Method)
        at java.lang.Class.privateGetDeclaredMethods(Class.java:2442)
        at java.lang.Class.getMethod0(Class.java:2685)
        at java.lang.Class.getMethod(Class.java:1620)
        at sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:492)
        at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:484)
Chicory warning: no records were printed
Exception in thread "main" Warning: Did not run Daikon because target exited with 1 status
4

1 回答 1

2

如评论中所述,它需要生成/编译针对特定版本的 Java 或 JVM,版本 5 的 .class 文件

这就是我为使其工作所做的工作:

javac -g -source 5 -target 5 DataStructures/*.java
java daikon.Chicory --daikon DataStructures.StackArTester

祝测试愉快!

于 2012-11-26T21:13:02.220 回答