[英]Encountered error while trying JCov java coverage utility
INTERNET中几乎所有地方都有这些基本步骤:
•照常编译Java文件
javac <source-files>
•“指令”字节码
java -jar jcov.jar Instr <application classes>
•运行代码
java -classpath ...:jcov_file_saver.jar ...
•创建报告
java -jar jcov.jar RepGen <jcov xml file> demo
我能够同时检测类文件和jar文件,但无法运行jar一个。
遇到此错误:
$ java -cp .:$JCOV/jcov_file_saver.jar -jar BubbleSort.jar
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tdk/jcov/runtime/Collect
at BubbleSort.main(BubbleSort.java:49)
Caused by: java.lang.ClassNotFoundException: com.sun.tdk.jcov.runtime.Collect
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
)
谁能帮助我或将我定向到一些我可以理解的网页?
您还需要提供jcov.jar文件,因为它包含com / sun / tdk / jcov / runtime / Collect类。
要在运行时提供jcov.jar,请运行此命令
java -cp。:$ JCOV / jcov_file_saver.jar -Xbootclasspath / a:$ JCOV / jcov.jar -jar BubbleSort.jar
使用此方法解决了问题,这要归功于sumedh的回答,这促使我了解各种类路径。 执行检测罐:
java -cp . -Xbootclasspath/a:$JCOV/jcov_file_saver.jar -jar BubbleSort.jar
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.