C# ルール「このキャストを削除し、インターフェイスを編集して不足している機能を追加する」を無効にしたいと考えています (csharpsquid:S3215)。一般的ではありませんが、"something\Business\Genome\*.cs" フォルダー内のすべてのファイルに対して) ("something" は 1 つまたは複数のディレクトリである可能性があります)
この SonarQube プロジェクトで「複数の条件で問題を無視する」オプションを使用しようとしていますが、正しい設定がわかりません (または、この機能が単に機能していない可能性があります)。
これまでに試した組み合わせ:
ルール キー パターン ファイル パス パターン csharpsquid:S3215 **/Business/Genome/*.cs csharpsquid:S3215 **\Business\Genome\*.cs csharpsquid:S3215 **//Business//Genome//*.cs *:S3215 **/Business/Genome/*.cs *:S3215 **\Business\Genome\*.cs *:S3215 **//Business//Genome//*.cs
一致していないのがルール キー パターンなのか、ファイル パス パターンなのかさえわかりません... :-/
更新 08.03.16: 昨夜、いくつかの追加テストを実行しました。プロジェクトレベルの代わりに、これをグローバルレベルで構成し、使用しました
ルール キー パターン ファイル パス パターン csharpsquid:S3215 **/?usiness/?enome/*.cs
ケーシングの問題を除外するには: どちらも成功しません。
それから私はちょうど使用しました
ルール キー パターン ファイル パス パターン csharpsquid:S3215 **/*.cs
それがまったく機能するかどうかを確認するために、実際に機能しました。どういうわけか私の道は間違っているに違いありませんが、方法がわかりません。
更新 08.03.16 (2):ビルド サーバーのログからの 1 行です。
08:57:50.854 情報 - 0/658 ファイルが分析され、分析が開始されました: C:\Program Files (x86)\Jenkins\workspace\Tools .Net (Nightly)\Tools\Business\Genome\Absence.cs
ケースの問題ではないことは確かです。しかし、私は別の疑いを持っています。ソリューション全体をスキャンすると、明らかに SonarQube はそのソリューション内のすべてのプロジェクトをコンポーネントとして扱い、各コンポーネント/プロジェクトを個別にスキャンします。スキャンパスがプロジェクトに関連している可能性はありますか? ログにもこれが表示されるため:
08:57:43.701 情報 - プラグイン stylecopanalyzers を読み込んでいます 08:57:43.924 情報 - ベース ディレクトリ: C:\Program Files (x86)\Jenkins\workspace\Tools .Net (Nightly)\Tools\Business\Genome 08:57:43.924 情報 - 作業ディレクトリ: C:\Program Files (x86)\Jenkins\workspace\Tools .Net (Nightly)\.sonarqube\out\.sonar... 08:57:44.103 情報 - ソース パス: Absence.cs、...