Ich habe ein paar Tage damit verbracht, SonarQube dazu zu bringen, die Unit-Testcode-Abdeckung vom Maven Jacoco-Plugin anzuzeigen.Jacoco SonarQube Integration
Die Fehlermeldung steckte ich bin auf ist
[INFO] Analysing .../target/jacoco.exec
[WARNING] Coverage information was not collected. Perhaps you forget to include debug information into compiled classes?
Der Bericht unter target/site/jacoco/index.html wie erwartet erzeugt und enthält Zeile markieren und Zeilennummern. Ich habe gelesen, dass, wenn keine Debug-Informationen in den kompilierten Klassen enthalten sind, die Hervorhebungs- und Zeilennummern in diesem Bericht nicht angezeigt werden.
Ich habe Maven enthält Debug-Informationen standardmäßig jedoch nur für den Fall enthalten ich die folgende Konfiguration in meinen Projekten Maven-Compiler-Plugin-Setup
<configuration>
<debug>true</debug>
<debuglevel>lines,vars,source</debuglevel>
</configuration>
ich die folgenden Eigenschaften in meiner settings.xml haben (Host und Login absichtlich ausgelassen)
Ich habe die folgende Konfiguration meines Jacoco-Plugins.
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.7.7.201606060606</version>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>report</id>
<phase>prepare-package</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
</plugin>
Mein jacoco.exec ist im Standardverzeichnis von Ziel/jacoco.exec und korrekt durch Sonarqube gefunden wird.
Relevante Versionen
Maven 3.2.2
Maven Compiler 3.5.1
Maven todsichere 2.19.1
Java 1.8.0_11
Sonarqube Server 5.6
Jacoco Maven Plugin 0.7.7.201606060606
Mac OS X 10.10.5
Vielen Dank im Voraus für die Hilfe!
---- ---- EDIT
ich folgende Maven leite Befehle
mvn clean package
mvn sonar:sonar
Welcher Befehl wird ausgeführt, um die Analyse auszuführen? Schauen Sie sich zum Beispiel mein Beispielprojekt an, das funktioniert, und zwar am besten in der Datei "runAnalysis.sh" => https://github.com/bellingard/fake-project-for-tests –
Ich führe 'mvn sauberes Paket 'und' mvn Sonar: Sonar'. Das Ziel des Bereitstellungsagenten wird vor dem Test ausgeführt, wie im folgenden Protokoll zu sehen ist. '[INFO] --- jacoco-maven-plugin: 0.7.7.2016606060606: vorbereitung-agent (default) @ event-service --- [INFO] argLine auf -javaagent: ... /. M2/repository gesetzt /org/jacoco/org.jacoco.agent/0.7.7.201606060606/org.jacoco.agent-0.7.7.201606060606-runtime.jar=destfile = .../target/jacoco.exec' – DecafCoder
Können Sie versuchen, die JaCoCo-Konfiguration zu entfernen? von Ihrem POM und führen Sie den gleichen Befehl als was Sie in "runAnalysis.sh" -Datei in meinem Repo sehen? –