java - Emma 代码覆盖工具错误 - 未找到 Main 方法

标签 java intellij-idea jar emma

我正在使用 Emma 代码覆盖率工具,并且我有 Java8。我是艾玛的新手,可用的帮助非常少。我尝试使用以下链接。

  1. http://emma.sourceforge.net/intro.html
  2. http://users.csc.calpoly.edu/~jdalbey/309/Lectures/emmademo.html

但是当我尝试运行时,我不断收到以下错误:

java -cp emma.jar emmarun -jar .../jdk1.4.2/demo/jfc/SwingSet2/SwingSet2.jar 
java -cp TestTools\emma.jar;. emmarun -cp . CircleConverter 

我还尝试了 here 中的选项但这没有帮助。

错误是 -

CoverageDemo>java -XX:-UseSplitVerifier -cp TestTools\emma.jar;. emmarun -cp . CircleConverter
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option UseSplitVerifier; support was removed in 8.0
EMMA: no coverage data collected at runtime [all reports will be empty]
EMMA: writing [txt] report to [C:\Users\pkothavale\Downloads\CoverageDemo\coverage.txt] ...
[EMMA v2.0, build 4217]
emmarun: [MAIN_METHOD_NOT_FOUND] application class [CircleConverter] does not have a runnable public main() method
Exception in thread "main" com.vladium.emma.EMMARuntimeException: [MAIN_METHOD_NOT_FOUND] application class [CircleConverter] 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
Exception Details:

最佳答案

事实上,问题是由于这一行造成的:

Caused by: java.lang.VerifyError: Expecting a stackmap frame at branch target 11

我通过此链接找到了解决方案:java.lang.VerifyError: Expecting a stackmap frame at branch target JDK 1.7

但简而言之,java7引入了更严格的验证,要禁用它,我们可以添加选项“-XX:-UseSplitVerifier”(如果您使用的是java7)或“-noverify”(如果您使用的是java8)。

因此 java8 的正确命令行是:

java -noverify -cp emma.jar emmarun -jar .../jdk1.4.2/demo/jfc/SwingSet2/SwingSet2.jar

关于java - Emma 代码覆盖工具错误 - 未找到 Main 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42170625/

相关文章:

intellij-idea - 如何使用 IntelliJ IDEA 调试 Haxe?

java - 关闭 Jar 文件后恢复数据

java - 打开文件;首先尝试文件系统,然后尝试 JAR

java - 如何在 File Java 中保留 2 个制表符空间格式

python - PyCharm - 自动将每个字符串转换为 fstring

java - Guice:Singleton.class 和@Singleton 的区别

intellij-idea - Intellij Idea 14.移动鼠标后所有工具提示消失

java - 如何清理tomcat缓存?

java - 在 Time4j(波斯历)中定义日期范围

Java套接字API : How to tell if a connection has been closed?