Ich tring, um Analyse auf SonarQube zu laufen, unter Verwendung einer FxCop-Gewohnheitsregel. In SonarQube 4.5.7 füge ich die Regel zu dem Regelwerk hinzu, ich aktiviere es und führe dann die Analyse aus. Um die Analyse verwende ich die Reihenfolge der folgenden Befehle ausführen:FxCop-Regel in SonarQube 4.5.7 auf C# -Projekt
1) MSBuild.SonarQube.Runner.exe begin /k:my.project.C-Sharp-ConsoleApp /n:C-Sharp-ConsoleApp /v:1.1
2) "C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild" /T:Rebuild
3) MSBuild.SonarQube.Runner.exe end
Ich sehe, dass die Regel ausgeführt wird, weil, wenn ich den zweiten Befehl ausführen ich den folgenden Teil des Protokolls lesen:
...
(RunCodeAnalysis target) ->
MSBUILD : warning CR1000: MyRules : Field 'CSharpSortNames.m_variabile' is not in Hungarian notation. Field name should be prefixed with 's'. [C:\Users\Alessandro\Documents\Visual Studio 2015\Projects\C-Sharp-ConsoleApp\C-Sharp-ConsoleApp\C-Sharp-ConsoleApp.csproj]
Meine benutzerdefinierte Regel CheckID ist CR1000, und nach dem dritten Befehl sehe ich, dass ein Fehler dieser Regel gegründet ist, aber die Web-App lässt mich nicht sehen, wo. Bei allen anderen Fehlern zeigt mir die Web-App die genaue Zeile, wo der Fehler ist, durch einen Link zur .cs-Datei. Für meine Regel gilt das nicht.
Kann mir jemand dabei helfen? Weiteres Problem ist in SonarQube 5.4 die gleiche Regel aktiviert ist, aber Web-App zeigt den Fehler nicht.
Danke für die Antwort. Nächsten Tagen beweise ich, was du gesagt hast, dann markiere ich deinen Kommentar. – grandeale8
Auf Sonarqube 5.4 hatte ich C# -Plugin 5.2, das fand keine Fehler über meine FxCop-Custom-Regel. – grandeale8
Auf Sonarqube 5.4 hatte ich C# -Plugin 5.2, das fand keine Fehler über meine FxCop-Custom-Regel. Aber wenn ich das C# -Plugin auf V5.3 aktualisiere, finde ich meine benutzerdefinierte Regel. Es ist ein Deklarationsfehler, daher wird der Zeilencode nicht angezeigt. So wird FxCop Verletzung ohne Standortinformationen mit C# Plugin v5.3 angesprochen. Vielen Dank. @ NicoleCalinoiu – grandeale8