2014-09-30 3 views
0

Я получаю эту ошибку в редакторе eclispe внезапно. Он работал ранее. Я использую Mac OSx enter image description hereПолучение этой ошибки в редакторе eclipse

Я не получал этого раньше. Я строю проект, используя муравей, который работает нормально. Я использую Eclipse 4.3.2. Это специфично для MAC OS? Я также cobertura для создания отчетов. Также, когда я запускаю серьезный тестовый пример, я получаю это

java.lang.NoClassDefFoundError: net/sourceforge/cobertura/coveragedata/HasBeenInstrumented 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:800) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) 
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358) 
    at java.lang.Class.getDeclaredFields0(Native Method) 
    at java.lang.Class.privateGetDeclaredFields(Class.java:2436) 
    at java.lang.Class.getDeclaredFields(Class.java:1806) 
    at org.spockframework.runtime.SpecInfoBuilder.buildFields(SpecInfoBuilder.java:86) 
    at org.spockframework.runtime.SpecInfoBuilder.doBuild(SpecInfoBuilder.java:57) 
    at org.spockframework.runtime.SpecInfoBuilder.build(SpecInfoBuilder.java:42) 
    at org.spockframework.runtime.Sputnik.getSpec(Sputnik.java:78) 
    at org.spockframework.runtime.Sputnik.runExtensionsIfNecessary(Sputnik.java:86) 
    at org.spockframework.runtime.Sputnik.getDescription(Sputnik.java:55) 
    at org.junit.runner.Runner.testCount(Runner.java:41) 
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestClassReference.countTestCases(JUnit4TestClassReference.java:30) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.countTests(RemoteTestRunner.java:487) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:455) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) 
Caused by: java.lang.ClassNotFoundException: net.sourceforge.cobertura.coveragedata.HasBeenInstrumented 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358) 
    ... 28 more 

Заранее благодарим за помощь.

+0

Какова ваша версия Java? – luboskrnac

+0

И версия Cobertura – luboskrnac

+0

java version 1.7.0_65 cobertura-1.9.4.1 – user1403505

ответ

0

Cobertura был почти мертвым проектом год назад. Последней версией Java, с которой он мог справиться, был JDK6. Таким образом, ваши проблемы могут быть вызваны более новой версией Java.

Там было некоторое развитие сделано в последнее время, но мои опасения:

Итак, мы перешли на другой инструмент для покрытия, называемый JaCoCo. Он может обрабатывать покрытие Java7 (пока не уверен в Java8). Если вы хотите хороший плагин в Eclipse, перейдите в Help -> Eclipse Marketplace ... -> Введите «EclEmma» в панель поиска -> Go. Этот плагин использует JaCoCo под капотом.

EDIT

После размещения ваших версий Java и Cobertura, мои подозреваемые становятся реальностью. Ваша версия Cobertura работает только с Java6. Вам нужно как-то обновить версию Cobertura или переключиться на предложенную выше альтернативу.

+0

Спасибо за понимание. Он работал до вчерашнего дня, и я не уверен, что какое-либо обновление java, которое я получил от Mac os, вызывает это, и я не нахожу ответы в сети. – user1403505

+0

Так что это было, вероятно, случайно. Если вы мне не верите, посмотрите здесь: http://stackoverflow.com/questions/8151470/cobertura-java-7-support – luboskrnac

Смежные вопросы