Frage

In einem maven-basierten Projekt fehlschlagen einige der Junit-Tests, jedoch nur während eines MAVEN-Site Builds. Bei der Ausführung von

generasacodicetagpre.

Alle Tests bestehen. Aber wenn er ausführt:

generasacodicetagpre.

Einige der Tests generieren die Nachricht:
konnte die Klasse org.jdom2.input.sax.xmlreadern nicht initialisieren

Diese Fehler treten in einer Klasse auf, die Rome verwendet, um RSS-Daten zu analysieren. Dazu hat das Projekt eine Abhängigkeit von Rom (com.Rometools: Rom: 1.5.0), die selbst eine Abhängigkeit von JDDOM 2.0.2 hat.

Die Fehler passierten nicht, wenn die Rom-Abhängigkeit noch nicht im Projekt enthalten war.

Die MAVEN-Site-Konfiguration umfasst das COBERTURA-MAVEN-Plugin. Dies hat auch eine Abhängigkeit von JDOM, durch Jaxen: Jaxen: Jax: 1.0 -> JDDOM: JDDOM: 1.0

Ich denke, dass beim Ausführen des Site-Ziels die JDVE 1.0-Version von der untersuchten Klasse verwendet wird, wodurch die Fehler in der Rom-Bibliothek verursacht wird, da er die falsche JDOM-Version verwendet.

Ich weiß nicht, wie das Projekt konfiguriert werden soll, um den JDOM 1.0 nur im COBERTURA-Plugin zu verwenden. Kennt jemand einen Weg, um das zu tun und die Tests während des Standortziels erfolgreich zu machen?

War es hilfreich?

Lösung

Das Problem wurde gelöst, indem ein Systemwert während des Programmstarts eingestellt wurde:

generasacodicetagpre.

Quelle: JDOM2: Dieser Parser unterstützt keine Spezifikation "NULL" -Version "null"

.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top