NoClassDefFoundError, wenn sie versuchen JMockit Coverage zu verwenden
Frage
Ich versuche JMockit die Code-Coverage-Fähigkeiten zu nutzen. Mit Hilfe der JVM Parameter
-javaagent:jmockit.jar=coverage=.*MyClass.java:html::
Ich bin in der Lage meine Tests ausführen (jmockit.jar und coverage.jar auf dem Classpath ist), leider meine Log-Datei sagt:
Loaded external tool: mockit.coverage.CodeCoverage=.*MyClass.java:html::
Loaded external tool: mockit.integration.junit3.JUnitTestCaseDecorator
Loaded external tool: mockit.integration.junit4.JUnit4ClassRunnerDecorator
Exception in thread "Thread-0" java.lang.NoClassDefFoundError
at mockit.coverage.CodeCoverage$OutputFileGenerator.run(CodeCoverage.java:56)
... und keine Deckung Datei erzeugt. Hat jemand JMockit Coverage bekommen zu arbeiten? Wenn ja, irgendwelche Gedanken darüber, was diesen Fehler verursacht? Dank ...
Antwort : Ich brauchte Abdeckung auf die Bootstrap-Einträge hinzufügen, anstatt nur die Benutzereinträge (in der Eclipse-Laufzeitkonfiguration)
Die tatsächliche Antwort Die eigentliche Antwort ist, dass ich den Test mit JUnit 3 wurde ausgeführt, aber die Abdeckung muss JUnit 4, dass die Dinge fixiert, und ich habe noch keine Bootstrap-Einträge hinzufügen.
Lösung
Ich habe den Test mit JUnit ausgeführt 3, aber die Abdeckung muss JUnit 4, dass die Dinge fixiert, und ich habe noch keine Bootstrap-Einträge hinzufügen.
Andere Tipps
Random guess ... Ist coverage.jar auf dem Classpath, dass JMockit verwendet - es könnte eine andere sein