5 Stimmen

Sonar Projektintegration

Hallo Damen und Herren,

Wir haben ein ziemlich großes Projekt mit eigenem Framework, das hauptsächlich auf Java basiert (obwohl es auch andere Sprachen gibt).

Wir möchten das Sonar Hudson-Plugin verwenden, um verschiedene Code-Metriken grafisch darzustellen. Wie machen wir das?

Müssen wir die Projektstruktur ändern und es auf Maven bringen oder gibt es einen Workaround, um einfach anzugeben, wo wir Testergebnisse und andere Artefakte abrufen können?

Vielen Dank

3voto

Mercer Traieste Punkte 4612

Die Methode, die wir verwenden, ist folgende:

  • wir haben eine benutzerdefinierte pom.xml-Build-Datei speziell für Sonar erstellt (wir verwenden Ant für andere Build-Zwecke)

  • Es muss nur gut testen, also haben wir fest codierte Abhängigkeitsreferenzen angegeben mit

    system
  • wir haben die Projektstruktur für Maven nicht geändert, Sie können in Maven benutzerdefinierte src, test, resources-Verzeichnisse angeben (solange Sie nur ein src- und test-Verzeichnis haben)

  • der Befehl, der in der CI verwendet wird, ist

    mvn clean compile sonar:sonar

Wir verwenden Continuum für den CI-Teil, aber es sollte genauso gut in Hudson funktionieren.

Diese Methode hat keine anderen Build-Elemente geändert, sie ist nur für Sonar maßgeschneidert. Es öffnet jedoch den Weg für einen Continuous Integration (täglichen) Build oder für die Verwendung von Maven als Build-Tool. Diese Methode ähnelt dem im "Sonar Light Mode" beschriebenen hier

Mehr Informationen hier:

2voto

Pablojim Punkte 8312

Sie können Sonar ohne Maven verwenden. Sie müssen ihm nur mitteilen, wo sich die Berichtsdateien befinden, mit den Eigenschaften: sonar.cobertura.reportPath, sonar.clover.reportPath, sonar.surefire.reportsPath...

Siehe hier: http://sonar.codehaus.org/tag/ant/

Es gibt ein Kontrollkästchen, um diese Werte bei der Konfiguration des Builds in Hudson festzulegen - es heißt "Überprüfen, ob dieses Projekt NICHT mit Maven2 erstellt wird"

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X