引起:java.lang.ClassNotFoundException:net.sourceforge.cobertura.coveragedata.HasBeenInstrumented

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了引起:java.lang.ClassNotFoundException:net.sourceforge.cobertura.coveragedata.HasBeenInstrumented相关的知识,希望对你有一定的参考价值。

我们已经安装了我们的应用程序版本(在生成应用程序包之前没有包含任何工具或cobertura jar)。

安装完成后,我们使用cobertura对所有jar进行了检测,并在java classpath中包含了cobertura jar文件。但在启动应用程序时它会给出以下错误。

任何输入都会有所帮助,谢谢。

Java版“1.7.0_25” 报道见1.9.4.1

Exception in thread "main" java.lang.NoClassDefFoundError: net/sourceforge/cobertura/coveragedata/HasBeenInstrumented
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: java.lang.ClassNotFoundException: net.sourceforge.cobertura.coveragedata.HasBeenInstrumented
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 13 more
答案

您应该使用-Xbootclasspath将cobetura.jar添加到Bootstrap类。更多信息:https://docs.oracle.com/javase/8/docs/technotes/tools/findingclasses.html这需要完成以加载cobetura类,这是加载应用程序类所需的。

另一答案

我已经能够通过运行一个延迟的包目标来摆脱这个问题,因为它重新编译并重新打包de代码而没有Cobertura。

我使用的目标是:

clean site package

以上是关于引起:java.lang.ClassNotFoundException:net.sourceforge.cobertura.coveragedata.HasBeenInstrumented的主要内容,如果未能解决你的问题,请参考以下文章

如何区分两个“onpause”事件 - 由单击“暂停”按钮引起,以及由到达媒体片段末尾引起?

查询如何引起gc

杂牌设备网络接入引起交换机引起端口翻转的故障

csharp 可能会引起问题的类的继承问题,父类后来增加的方法可能会引起子类的函数重载错误

两则dhcp设置引起的故障

大开测试:性能-如何解决由于设置引起的运行失败问题(连载22)