2016-07-29 17 views
0

Neu zu Sonar. Bin mit checkstyle und jacoco sehr zufrieden.Sonar in Bambus, checkstyle und jacoco lokale bauten

Was ich erforsche, ist in einem Großprojekt, geben Sie Entwicklern die Möglichkeit, Style-Checks und Code-Coverage-Berichte lokal auszuführen, aber dann Bambus verwenden, um Berichte in Sonar zu veröffentlichen.

Ist dies eine praktikable Option? Ich kann sehen, dass jacoco plugin und sonar plugin im selben build.gradle sein können und so raten, dass jacoco-Berichte vom Sonar erhalten werden können. Ich bin mir jedoch nicht sicher, wie die Checkstyle-Integration funktioniert. Von dem, was ich sehe, kann ich Sonar ein Checkstyle-Plugin hinzufügen, aber dann muss ich Regeln in SonarQube definieren. Ich möchte die Checkstyle-Konfiguration lokal beibehalten, damit Entwickler vor dem Commit von Code eine lokale Überprüfung durchführen können.

Bear mit mir, wenn die Fragen naiv sind.

Antwort

0

Ihr Ziel: Entwickler können die gleichen Regeln lokal ausführen, die in einem SonarQube-Scan angewendet werden. Das bedeutet: SonarLint bietet einen "verbundenen Modus" für IntelliJ, Eclipse und Visual Studio. Angenommen, Sie verwenden die SonarQube-Analysatoren, werden sie während des Codierens unter Verwendung des gleichen Regelsatzes wie bei einer Analyse direkt überprüft. Wenn sich das Profil auf dem Server ändert, kann es in der IDE manuell neu synchronisiert werden.

Der Haken: Damit dies nahtlos funktioniert, sollten Sie Ihre Checkstyle-Regeln durch die von SonarQube Analyzer für Java (d. H. Das Java-Plugin) angebotenen ersetzen. Fast alle "wertvollen" Regeln von Checkstyle wurden im Java-Plugin ersetzt.

+0

Danke für die Antwort. Aber ich mag es lieber, IDE-agnostisch zu sein und stattdessen ein Gradle-Plugin oder ähnliches laufen zu lassen, um einen Build-Time-Check zu machen (zusätzlich zu natürlichem Code-Check, der sofort überprüft.) Und eine andere Frage kommt mir in den Sinn, wie halte ich die beiden synchron - SonarLint-Einstellungen in den IDE- und SonarQube-Einstellungen: Die eine wird in einem Server verwaltet und die andere als Teil Ihrer IDE-Einstellung. –

Verwandte Themen