Ich empfehle, dass Sie versuchen, bestimmte Warnungen zu unterdrücken, indem Sie @SuppressWarnings("squid:S2078")
verwenden.
Für mehrere Warnungen unterdrücken Sie können es tun, wie diese @SuppressWarnings({"squid:S2078", "squid:S2076"})
Es gibt auch die //NOSONAR
Kommentar, der Sonarqube alle Fehler für eine bestimmte Leitung zu ignorieren erzählt.
Schließlich, wenn Sie die richtigen Rechte für die Benutzeroberfläche haben, können Sie ein Flag als falsches positives direkt von der Schnittstelle ausstellen.
Der Grund, warum ich die Unterdrückung bestimmter Warnungen empfehle, ist, dass es besser ist, ein bestimmtes Problem zu blockieren, statt //NOSONAR
zu verwenden und ein Sonar-Problem durch Zufall in Ihrem Code zu riskieren.
Sie können in der FAQ
Hinweis mehr dazu lesen: Gábor Bakos auf die ältere FAQ verweist, jetzt 404s. Dies ist das erste für mich google Ergebnis so dass ich jemand helfen anderes wollen, dass die gleiche Frage haben könnte
Edit: 6/30/16 Sonarqube jetzt SonarLint genannt
Falls Sie sich fragen, wie zu finden die Tintenfischnummer. Klicken Sie einfach auf die Sonar-Nachricht (z. B. Remove this method to simply inherit it.
) und das Sonar-Problem wird erweitert.
Auf links unten wird es die Tintenfisch-Nummer haben (ex. squid:S1185
Wartbarkeit> Verständlichkeit)
So können Sie es durch @SuppressWarnings("squid:S1185")
Einverstanden.Ich bin mir jedoch nicht sicher, ob Sonar '@ SuppressFBWarnings' richtig interpretiert (hinzugefügt, um Konflikte mit' java.lang.SuppressWarnings' zu vermeiden) und es auch ignoriert. –
AFAIK, Sonar verwendet FindBugs. Wenn FindBugs diese Anmerkungen behandelt, sehe ich nicht, warum sie nicht funktionieren würden, wenn FindBugs über Sonar ausgeführt wird. Sollte sowieso nicht schwer zu testen sein. –
Der FAQ-Link ist veraltet. Hier ist die neue [FAQ] (http://docs.sonarqube.org/display/HOME/Frequently+Asked+Questions#FrequentlyAskedQuestions-Howtoremovefalsepositiveissues?) – wiredniko