使用emmarun(未找到主要方法)

我在一个空目录中有一个超简单的文件:

public class Test { public static void main(String[] args) { System.out.println("Test"); } } 

以下工作如预期

 javac Test.java java Test > Test 

我在Mac OS X上,使用emma-2.0.5312和java 1.7.0_40

emma.jar已安装到/ Library / Java / Extensions,因此可行

 java emmarun 

(显示使用emmarun的帮助)

接下来我跑

 java emmarun -cp . Test 

我收到错误:

 emmarun: [MAIN_METHOD_NOT_FOUND] application class [Test] does not have a runnable public main() method Exception in thread "main" com.vladium.emma.EMMARuntimeException: [MAIN_METHOD_NOT_FOUND] application class [Test] does not have a runnable public main() method at com.vladium.emma.rt.AppRunner._run(AppRunner.java:497) at com.vladium.emma.rt.AppRunner.run(AppRunner.java:97) at com.vladium.emma.runCommand.run(runCommand.java:247) at emmarun.main(emmarun.java:27) Caused by: java.lang.VerifyError: Expecting a stackmap frame at branch target 11 

是什么导致这个? 显然它确实有一个公共的,可访问的主要方法,所以为什么emma不能找到它?

根据这个链接http://vikashazrati.wordpress.com/2011/10/09/quicktip-verifyerror-with-jdk-7/

如果我使用

 java -XX:-UseSplitVerifier emmarun -cp . Test 

它工作得很好

显然,在这个版本的java中字节码有一些变化,并且emma还没有更新来处理它。