[Maven] problem mit plugin - es fehlen "dubug informationen"

dermoritz

Bekanntes Mitglied
Ich hab ein Problem mit "jacoco-maven-plugin" . (Jacoco wird benutzt für Coveragemessung - insbesondere für Integrationstests in separaten Modulen - siehe hier)

Ich hab das ganze nach langem rumprobieren ans Laufen gebracht nur leider meldet es:
"Coverage information was not collected. Perhaps you forget to include debug information into compiled classes?"

das ich
Code:
<maven.compiler.debug>true</maven.compiler.debug>
zur Sicherheit explizit gesetzt habe, denke ich es liegt nicht an den Debuginformationen die fehlen, sondern das plugin findet die eigentlichen Klassen nicht?! Diese sind in meinem Fall in target/test-classes (Das Integrationstest-Module hat allen code unter src/test/java).

Ich Frage mich nun, wie ich dem Problem zu Leibe rücken kann: Fehlen die DebugInformationen oder die Klassen(Wie krieg ich das raus)? Falls DebugInfos fehelen - Was soll ich machen? Falls die Klassen fehlen bei welchem Plugin muss ich den Pfad einstellen?
(Das Jacoco Plugin läuft sozusagen mit failsafe oder surefire mit. Es wird nur ein spezieller "Javaagent" gestartet der beim ausführen zuschaut. Die Ergebnisse werden dann nach target/jacoco.exec geschrieben)
 

kama

Top Contributor
Hi,

hast Du die Konfiguration so in die POM geschrieben? Wenn ja ist das prinzipiell nicht richtig....weiterhin ist per default seitens des maven-compiler-plugins der Debug eingeschaltet....sollte also eigentlich kein Problem geben...
Welche Version vom maven-compiler-plugin verwendest Du denn ? Welche Maven Version und welche Java version?

Gruß
Karl Heinz Marbaise
 

dermoritz

Bekanntes Mitglied
Danke Kama,

ich hab noch etwas weiter rumprobiert. Ich schätze es ist kein Problem mit dem Compiler-Plugin. Vielmehr ist es ein Problem mit dem Plugin bzw. dessen Konfiguration oder Projektkonfiguration.
Wenn ich lokal einfach mvn clean verify ausführe mit konfiguriertem jacoco-plugin:
Code:
<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<version>0.5.5.201112152213</version>
				<executions>
					<execution>
						<id>prepare</id>
						<phase>pre-integration-test</phase>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
					</execution>
					<execution>
						<id>report</id>
						<phase>post-integration-test</phase>
						<goals>
							<goal>report</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
funktioniert es scheinbar wunderbar, nur das im erzeugten Report eine Coverage von 0% steht unter Session findet man alle zur Analyse herangezogenen Klassen - auch die die eine coverage >0% haben sollte.
Um den Fehler ""Coverage information was not collected. ..." vom Jenkins-Lauf zu reproduzieren hab ich noch das sonar-plugin aktiviert - wenn das läuft erscheint die gennate Warnung. (In Sonar wird auch eine Coverage von 0% angezeigt)
Leider ist Jacoco aus meiner Sicht sehr schlecht dokmentiert, so dass ich keine Ahnung hab warum es nicht funzt.

Vielleicht benötigt es den Source-Code - sowohl der Testklassen als auch der aufgerufenen Klassen?
(die Abhängigkeit bezieht sich im Moment nur auf "classes" bzw. "jar") und für die Quellpfade wird das ausgegeben:
Code:
[INFO] [10:18:55.788] Source directories:
[INFO] [10:18:55.788]   ...\src\main\java
[INFO] [10:18:55.788] Test directories:
[INFO] [10:18:55.788]   ...\src\test\java
Wobei der sourcepfad leer ist! Kann ich Maven mitteilen, das der test-Pfad ach ein Quellpfad ist? (jacoco müsste eigentlich so schlau sein und beide benutzen?!)
 
M

maki

Gast
Leider ist Jacoco aus meiner Sicht sehr schlecht dokmentiert,
Wundert dich das? ;)

Implementation Status

This release of JaCoCo is a fully functional prototype to verify the concepts and implementation strategies. It already produces neat coverage reports and has been successfully tested with comprehensive JUnit test suites as well as huge Eclipse RCP applications and J2EE projects. JaCoCo is integrated with several tools.
 

dermoritz

Bekanntes Mitglied
meine derzeitige Vermutung ist, dass das Plugin die Quellen braucht nur wie einbinden?

Eine Abhängigkeit zu "sources" machen macht mir immer Probleme: Man muss glaube dem sources-plugin sagen "attach-sources" damit die Quellen auch für Snapshots da sind. Damit kommt aber das release plugin nicht klar - es packt dann zweimal die sources dazu was wiederum im nexus zu einem error führt.

Wenn ich das build-helper-plugin verwende und die Quellen des anderen Moduls dem IT-Modul hinzufüge gibts (natürlich) compile errors. Mache ich es hingegen in der phase "pre-integration-test" gibt es zwar keine compile errors aber es hilft auch nix.
 

dermoritz

Bekanntes Mitglied
Ich hab etwas rumrecherchiert:

Also die Quellen werden nicht benötigt. Und das Instrumentieren geschieht hier on-the-fly mit dem Bytecode wenn er ausgeführt wird (das ist sozusagen der Hauptwitz bei Jacoco).

Die einzige Antwort die ich aus einer anderen Quelle erhalten habe, ist die, dass wohl Debug-Informationen fehlen (also exakt das was mir die Warnung weißmachen will). Alos hab ich mal mit "javap -l" mir einige .class-Dateien angeschaut und sie enthalten alle Debuginfos (linen umber table und local variables).

Also stehe ich da wo ich am Anfang stand :-|. Ich habe nun schon mehrere Tage darin investiert Coverage-Infos von meinem separaten IT-Modul zu erhalten (was hier steht ist sehr reizvoll), aber nun reichts. Wie maki schon meinte hauptsächlich wird es daran liegen das es noch ein "protype" ist. Ich werd auch ohne Coverage-Metrik leben können.
 
M

maki

Gast
Cobertura erzeugt auch Coverage Infos, allerdings nicht für Integrationstests (zumindest nicht ohne Aufwand der imho kaum zu vertreten ist, verglichen mit clover als kommerzeilles Tool)
clover soll das auch können, kostet aber.

jacoco wird AFAIK auch intern von Sonar verwendet, kann sein dass deine Probleme damit zu tun haben.
 

dermoritz

Bekanntes Mitglied
jacoco ist sozusagen bei sonar nur ein vorinstalliertes pugin. man kann es aktivieren indem man "-Dsonar.jacoco.itReportPath=[path to jacoco.exec] setzt.

in genau hier wird dann die Warnung ausgeworfen. Und wie gesagt wenn man mit jacoco selbst ein (html)report erzeugt kommt die warnung nicht. Das Ergebniss ist aber dasselbe - 0% coverage.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D [maven] problem mit konfiguration von cargo plugin Tools - Maven, Gradle, Ant & mehr 4
H Maven dependency Problem ? Tools - Maven, Gradle, Ant & mehr 23
I Problem: Maven import extern Lib Tools - Maven, Gradle, Ant & mehr 3
C Kleines Problem mit Maven und Resourcen. Tools - Maven, Gradle, Ant & mehr 3
T Problem mit Maven Assembly ... Tools - Maven, Gradle, Ant & mehr 6
Oneixee5 Maven deploy - per SSH Tools - Maven, Gradle, Ant & mehr 6
H Maven kein Hauptmanifestattribut Tools - Maven, Gradle, Ant & mehr 10
M Programm mit Maven erstellen und starten samt Abhängigkeiten Tools - Maven, Gradle, Ant & mehr 27
D Interne Dependencies in Maven Tools - Maven, Gradle, Ant & mehr 51
J log4j2 mit Hibernate über Maven Tools - Maven, Gradle, Ant & mehr 10
thor_norsk Maven Build Failed: kann nicht von start.spring.io generiertes Projekt auf IntelliJ IDE starten Tools - Maven, Gradle, Ant & mehr 8
H Maven JUnit5 Tests werden ignoriert Tools - Maven, Gradle, Ant & mehr 5
thor_norsk Maven Tools - Maven, Gradle, Ant & mehr 32
ExceptionOfExpectation Maven Build Failed: kann nicht von start.spring.io generiertes Projekt auf Eclipse starten Tools - Maven, Gradle, Ant & mehr 20
Ich kann Maven nicht als UmgebungsVariable hinzufügen Tools - Maven, Gradle, Ant & mehr 2
F Maven JAR Plugin Probleme Tools - Maven, Gradle, Ant & mehr 4
W Was "braucht" man denn alles? Maven, Ant, Git, ... Tools - Maven, Gradle, Ant & mehr 21
N Fehler beim Imgui mit Maven Tools - Maven, Gradle, Ant & mehr 7
M Spring Boot Maven pom.xml-Eintrag Tools - Maven, Gradle, Ant & mehr 17
Encera JavaFX und Maven funktioniert nicht Tools - Maven, Gradle, Ant & mehr 1
B maven multi module Projekt und unnötige/zusätzliche Leerzeilen Tools - Maven, Gradle, Ant & mehr 4
J Maven Konfusion Tools - Maven, Gradle, Ant & mehr 7
Tippster Maven Sqlite integrieren (Eclipse, Maven) Tools - Maven, Gradle, Ant & mehr 4
T Image kreieren mit Maven bei JavaFX und nicht modularen Jars Tools - Maven, Gradle, Ant & mehr 12
T JSON Dependencies in Maven Tools - Maven, Gradle, Ant & mehr 7
T JavaFX, Jar über Maven kreieren Tools - Maven, Gradle, Ant & mehr 2
Encera Libraries Maven Projekt hinzufügen Tools - Maven, Gradle, Ant & mehr 9
Oneixee5 Maven Phase Tools - Maven, Gradle, Ant & mehr 3
Robertop maven copy-resources nicht in WAR Datei Tools - Maven, Gradle, Ant & mehr 2
T Maven: Probleme beim Einbinden der Dependencies Tools - Maven, Gradle, Ant & mehr 9
M Mit Maven eine jar Datei bauen ohne irgendeine main Methode Tools - Maven, Gradle, Ant & mehr 1
M Mit Maven eine jar Datei Bauen ohne irgendeine main Methode Tools - Maven, Gradle, Ant & mehr 18
H Maven Maven: <mainClass>NAME?</mainClass> Tools - Maven, Gradle, Ant & mehr 13
H Maven maven-source-plugin is missing Tools - Maven, Gradle, Ant & mehr 5
M Missing Artifact on selbst gehostestes Maven Paket Tools - Maven, Gradle, Ant & mehr 8
M Error code 409 maven Tools - Maven, Gradle, Ant & mehr 5
M github + maven Fehler beim repository erstellen Tools - Maven, Gradle, Ant & mehr 1
M durch Maven wird "var" nicht gefunden Tools - Maven, Gradle, Ant & mehr 4
N Maven Intellij Maven Projekt erstell keine src Tools - Maven, Gradle, Ant & mehr 4
LimDul Maven Einzelne Unit Tests in Maven Builds skippen Tools - Maven, Gradle, Ant & mehr 3
M Maven jpackage-image wird nicht gefunden Tools - Maven, Gradle, Ant & mehr 22
M javafx wird in einem alten programm nicht bei maven gefunden Tools - Maven, Gradle, Ant & mehr 15
L Maven IntelliJ, Maven und JavaFX + SceneBuilder Tools - Maven, Gradle, Ant & mehr 23
von Spotz Maven und Spring: "Add to classpath" ? Tools - Maven, Gradle, Ant & mehr 29
Kirby.exe Projekt mit Maven kompilieren Tools - Maven, Gradle, Ant & mehr 13
P Maven Projekt Abhängigkeiten auf bekante Schwachstellen prüfen Tools - Maven, Gradle, Ant & mehr 4
B Maven und Intellij Tools - Maven, Gradle, Ant & mehr 24
P Maven Test werden nicht ausgeführt . Junit . Maven . Surefire . Eclipse Tools - Maven, Gradle, Ant & mehr 12
yakazuqi Maven Eigene API mit Maven einbinden Tools - Maven, Gradle, Ant & mehr 1
M Was ist besser für den Anfang, Maven oder Gradle? Tools - Maven, Gradle, Ant & mehr 6
P Maven Wie die Maven Project version in JSP page verwenden? Tools - Maven, Gradle, Ant & mehr 2
C Maven Multi-Module Projekt Tools - Maven, Gradle, Ant & mehr 2
T Maven Warnings/Fehlermeldungen Tools - Maven, Gradle, Ant & mehr 12
T Maven und Datenbank(treiber) Tools - Maven, Gradle, Ant & mehr 13
T Maven Runnable Jar Tools - Maven, Gradle, Ant & mehr 5
T Grundlagen Maven und Git/Github Tools - Maven, Gradle, Ant & mehr 2
LimDul Maven Maven Surefire Plugin - Warnings upgrade Tools - Maven, Gradle, Ant & mehr 2
G Maven upload Tools - Maven, Gradle, Ant & mehr 0
K Maven - Parent oder Dependency? Tools - Maven, Gradle, Ant & mehr 5
B Maven Maven deploy Tools - Maven, Gradle, Ant & mehr 4
H Jenkins keine Tests gefunden - aber in Maven Tools - Maven, Gradle, Ant & mehr 30
P Mit Maven einen spezifischen Branch nach Tag-Parameter erstellen (in Jenkins-Job) Tools - Maven, Gradle, Ant & mehr 3
P Nur einen Teilbaum in Maven releasen? Tools - Maven, Gradle, Ant & mehr 7
D Cannot invoke "javafx.scene.control.MenuButton.getScene()" nach konvertierung zu maven Tools - Maven, Gradle, Ant & mehr 3
H Maven - keine Durchführung von Tests Tools - Maven, Gradle, Ant & mehr 12
H Jenkins - maven-jar-plugin - kein jar-file Tools - Maven, Gradle, Ant & mehr 38
P JavaFX jar mit Maven Tools - Maven, Gradle, Ant & mehr 9
P Maven & Intellij Modul kann nicht aufgelöst werden Tools - Maven, Gradle, Ant & mehr 12
H Eclipse JUnit erzeugt Fehler im Maven-Test Tools - Maven, Gradle, Ant & mehr 1
H Maven Anfängerproblem - No plugin found for prefix 'archetype' in the current project and in the plugin groups Tools - Maven, Gradle, Ant & mehr 25
sascha-sphw Maven vs Gradle Tools - Maven, Gradle, Ant & mehr 24
D Maven Maven und die Build-Geschwindigkeit Tools - Maven, Gradle, Ant & mehr 11
K Maven IntelliJ + Maven + JavaFX Tools - Maven, Gradle, Ant & mehr 2
J Maven Mit Maven eine ZIP Datei erstellen Tools - Maven, Gradle, Ant & mehr 0
K Maven install schlägt fehl Tools - Maven, Gradle, Ant & mehr 10
Tom299 Maven Maven funktioniert nach Installation nicht Tools - Maven, Gradle, Ant & mehr 1
I Maven Interface hinzugefügt - Error Tools - Maven, Gradle, Ant & mehr 1
M Verständnisfrage Maven Tools - Maven, Gradle, Ant & mehr 2
S Maven installieren - "Befehl wurde nicht gefunden" Tools - Maven, Gradle, Ant & mehr 1
E Maven: Wie Abhängigkeiten analysieren? Tools - Maven, Gradle, Ant & mehr 0
E Maven Maven distributionManagement Vererbung in child POM Tools - Maven, Gradle, Ant & mehr 8
P Maven Parent- Child POMs Tools - Maven, Gradle, Ant & mehr 13
E Release Kandidaten mit Maven bauen Tools - Maven, Gradle, Ant & mehr 4
C Orderstruktur bei Libarys - Wie mit Ant oder Maven lösen? Tools - Maven, Gradle, Ant & mehr 0
G Maven, finde Dependency nicht... Tools - Maven, Gradle, Ant & mehr 2
G Maven Continious Integration mit Jenkins, Maven und Nexus - wie richtig? Tools - Maven, Gradle, Ant & mehr 1
P Maven Parent und Child Poms - dependencies Tools - Maven, Gradle, Ant & mehr 1
reibi Maven Maven + Eclipse Tools - Maven, Gradle, Ant & mehr 0
P Maven add resource Tools - Maven, Gradle, Ant & mehr 0
D [Maven Pluginentwicklung] - Plugin das nur auf Parent pom läuft Tools - Maven, Gradle, Ant & mehr 0
S Maven Maven und Auflösen von JSF EL Tools - Maven, Gradle, Ant & mehr 5
H Maven HSQLDB in den Maven lifecycle einbinden Tools - Maven, Gradle, Ant & mehr 5
S Maven Unterschiedliche Deployments mit Maven Tools - Maven, Gradle, Ant & mehr 2
S Maven buildnumber-maven-plugin / Formatproblem mit timestamp Tools - Maven, Gradle, Ant & mehr 17
P Erzeugen von WebServices mit Maven und Eclipse (external Tool) Tools - Maven, Gradle, Ant & mehr 2
aze Maven downgraden von 3.x auf 2.09 unter Linux Tools - Maven, Gradle, Ant & mehr 4
Rudolf JSF und Maven mit Eclipse Tools - Maven, Gradle, Ant & mehr 5
M Maven-Dependency kann nicht gefunden werden Tools - Maven, Gradle, Ant & mehr 2
M Maven imports aus Modulen Tools - Maven, Gradle, Ant & mehr 4
P multimodul maven in SVN Tools - Maven, Gradle, Ant & mehr 3

Ähnliche Java Themen

Neue Themen


Oben