FxCop 10 で SonarQube 4.0 と C# プラグイン 3.1 を使用しています。アップストリーム ビルドから提供されたアセンブリがあります。Gradle で sonar-runner プラグインを使用しています。
ソナー ランナーが FxCop 分析に到達すると、次のようなログ出力が得られます。
16:43:16.660 INFO - Skipping the FxCop issue at line 9 which has no associated file.
16:43:16.660 INFO - Skipping the FxCop issue at line 12 which has no associated file.
16:43:16.660 INFO - Skipping the FxCop issue at line 15 which has no associated file.
16:43:16.660 INFO - Skipping the FxCop issue at line 24 which has no associated file.
16:43:16.660 INFO - Skipping the FxCop issue at line 31 whose file "e:\9394\Sources\[path removed]\CallbackWebService.cs" is not in SonarQube.
16:43:16.660 INFO - Skipping the FxCop issue at line 38 whose file "e:\9394\Sources\[path removed]\CallbackWebService.cs" is not in SonarQube.
16:43:16.660 INFO - Skipping the FxCop issue at line 45 whose file "e:\9394\Sources\[path removed]\CallbackWebService.cs" is not in SonarQube.
16:43:16.660 INFO - Sensor org.sonar.plugins.csharp.core.CSharpFxCopProvider$CSharpFxCopSensor@18db7c1 done: 3344 ms
これは、私の SonarQube 分析用の TFS ワークスペースが、アセンブリがビルドされたワークスペースとは別の場所にあるために発生しているようです。FxCop スタンドアロンを使用していた場合、/applyoutxsl を使用してパスを変換できるように見えますが、SonarQube では FxCop コマンドラインにアクセスしてこれを有効にすることはできません。
だから、私の質問:これを修正する方法はありますか?このワークスペースからアセンブリをビルドするのは現実的ではなく、2 つのワークスペース パスを同期しようとするのは合理的ではありません。