2016-04-27 6 views
3

SonarQube 5.4でMSBuild 2.0用のSonarQubeスキャナーを使用しています。 Rosarn Wintellect.Analyzers NuGetパッケージのSonarQubeプラグインをSonarQubeサーバーに追加し、SonarQubeプロジェクトが使用する品質プロファイルにルールを追加しました。 C#のソースコードでは、#pragmaを使用して "Wintellect003"ルールを無効にしています(そして、SuppressMessage属性をインラインで、次にGlobalSuppressions.csで試しました)。 Visual Studio 2015とmsbuild 14ではルールは正常に無効になっていますが、SonarQubeはルールを無効にしていません(SonarQubeまたはルールセットでルールを無効にしていません)。SonarQubeはisSuppressedInSourceを無視していますか?

私はので、「終わり」フェーズでMsBuild.SonarQube.Runner.exeは抑制を認識していることがわかりますが、それはSonarQubeに送信するRoslynCA.jsonファイルを生成し、それは次のセクションが含まれています -

"ruleId": "Wintellect003", 
"kind": "warning", 
"locations": [ 
    { 
    "analysisTarget": [ 
     { 
     "uri": "file:\/\/\/C:\/CS5Tests/Mycode.cs", 
     "region": { 
      "startLine": 920, 
      "startColumn": 17, 
      "endLine": 923, 
      "endColumn": 118 
     } 
     } 
    ] 
    } 
], 
"shortMessage": "'if' statements must have braces", 
"fullMessage": "If and else statements must use braces even for single line results", 
"isSuppressedInSource": true, 

「isSuppressedInSource」がtrueであることがわかります。残念ながらSonarQubeはこの設定を尊重していません。何か案は?

(私はSonarQubeサーバーを停止し、キャッシュをクリアしてSonarQubeサーバーを再起動するためにデータ\ esフォルダを削除しようとしましたが、これは役に立ちませんでした)。

答えて

1

C#5.2のプラグインは、このためのサポートが追加されています

https://groups.google.com/d/msg/sonarqube/0gghnIQf3XU/aEMSwMkvBAAJ

我々はSonarQube C#プラグインのバージョン5.2をリリースしたいと思います。

新しいものはありますか?

発行抑制今

をサポートされています[SuppressMessage]を通じてすべてのFxCopの問題は、バック特定のファイル

にマッピングすることができなかった分野にも、ものが6つの新しいルール これを追加し、SonarQubeにインポートされますVisual StudioとSonarQubeに表示される問題の間のギャップが解消されます。

+0

マイクさん、C#プラグインを5.2 RC1にアップグレードすると、実際に私の問題が解決されます。 –

+0

問題ありません。喜んで助けてください。あなたが気にしないなら、この回答に合格とマークしてください。 –

関連する問題