web-dev-qa-db-ja.com

ソナーで、いくつかのパッケージのいくつかのルールをチェックしないようにするにはどうすればよいですか?

Android/Blackberryプロジェクトに共通の部分があります。その部分は、明らかに、AndroidとBlackberryターゲットの両方にコンパイルするように記述されているため、新しいJava機能の一部(たとえば、整数.valueOf)その部分に特化したいくつかのルールをスキップしたいのですが、これを行う方法はありますか?

18
Fixpoint

共通部分を独自のプロジェクトに分離する場合、Sonar(これらのルールを無効にした場所)に新しい Quality Profile を追加して、それを共通プロジェクトに割り当てることができます。

それとは別に、

// NOSONAR

1行で 警告を非表示 にコメントします。

23
FrVaBe

これは古い質問であり、その間、より良い解決策があると思います:

関連するクラスに// NOSONARを追加すると、問題がどういうわけか解決します。しかし、この場合はルールがまったく適用されないため、これには問題があると思います。ただし、これを解決する別の方法があります。 複数の基準で問題を無視

例:

私のすべてのJavaファイルのcom.foobar.domainパッケージのコーディングルールMagicNumbersに対するすべての問題を無視したいと思います。

Sonarでプロジェクトに移動し、Configuration\Settings\Issuesに移動し、Ignore Issues on Multiple Criteriaに追加:

  • ルールキーパターン:com.puppycrawl.tools.checkstyle.checks.coding.MagicNumberCheck
  • ファイルパスパターン:com/foobar/domain/*。Java

Sonar ignore issues

これはすべて、リンクされたドキュメントでも非常にうまく説明されています。

13
Martin