3

SonarQube を 4.0 から 4.2 にアップグレードした後、Lombok アノテーションを持つクラスから「未使用のプライベート フィールドを削除する必要があります」というエラーが大量に発生しました。

私は持っている

@SuppressWarnings("PMD.UnusedPrivateField")

これらすべてのクラスの先頭で宣言されています。SonarQube 3.7 と 4.0 を使用していたときは問題なく動作しました。

私が使う

mvn sonar:sonar

SonarQube レポートを生成します。

そして、これは私のクラスがどのように見えるかを示しています:

@Data
@SuppressWarnings("PMD.UnusedPrivateField")
public class MyClass {
    private String field;
}

バージョン 4.2 でこれらのエラーを取り除くにはどうすればよいですか? ありがとう。

4

2 に答える 2

2

「未使用のプライベート フィールドを削除する必要があります」は内部 SonarQube ルールによって生成されるメッセージですがsquid:S1068@SuppressWarnings注釈は一致する (および非推奨の) PMD チェックを無効にします。

品質プロファイルを確認し、最終的にこのルールを無効にするか、Lombok 拡張クラスを除外することが必要になる場合があります。

于 2014-04-08T19:50:24.003 に答える
1

//NOSONAR@Data クラスがプロジェクトに散らばっている場合、このルールをグローバルに無効にする必要がないため、フィールドのソナー分析を個別に除外することもできますが、このオプションにはすべてのソナーを無効にするという欠点もあります。この特定の行の分析。

@Data
public class MyClass {
    private String field; //NOSONAR
}
于 2014-11-28T23:08:14.853 に答える