【发布时间】:2014-06-06 01:07:03
【问题描述】:
我正在使用来自 http://cobertura.github.io/cobertura/ 的 Cobertura 2.3.0 来分析我的项目的测试覆盖率,我得到了一个
Error: Could not find or load main class net.sourceforge.cobertura.instrument.Main
尝试从命令行执行 cobertura-instrument.bat 时。我查看了这个批处理文件,它试图从 %COBERTURA_HOME%/lib 文件夹中加载几个不存在的 JAR。我已经手动下载了这些 JAR,但遇到了其他奇怪的错误。
java.lang.IncompatibleClassChangeError: class net.sourceforge.cobertura.instrument.pass1.DetectIgnoredCodeClassVisitor has interface org.objectweb.asm.ClassVisitor as super class
这个版本是否有可能被错误地更新了?我看不出有任何其他方法可以使这项工作。此外,有没有人知道一个有效的测试覆盖实用程序,最好是一个工作的不同版本的 Cobertura?
我尝试过 Nounit 和其他几个,但没有得到我知道 Cobertura 可以产生的清洁输出类型。
【问题讨论】:
-
您可以尝试通过转到cobertura.ci.cloudbees.com/job/Cobertura 下载最新版本的cobertura 吗?
-
@Steve 感谢您的回复。我不熟悉詹金斯。我该如何从这个网站下载?如果它是Source,则构建?谢谢!
-
在“最后成功的工件”下方有一个可用下载列表。您可能需要获取 tar.gz、zip 或 SNAPSHOT.jar,具体取决于您当前的设置。
-
@Steve 感谢您的帮助。这次我采用了不同的解决方案。不过,我很感激这些回复。
标签: java testing junit cobertura