如何忽略 lombok @EqualsAndHashCode 的 Sonar 'Uncovered Conditions'

How to ignore Sonar 'Uncovered Conditions' for lombok @EqualsAndHashCode

对于下面的 class Sonar 抱怨 @EqualsAndHashCode(lombok 注释)的未覆盖条件。我试过添加 '// NOSONAR' 来忽略但它没有帮助。请参阅下面的代码以供参考。

import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
@EqualsAndHashCode(callSuper = false) // NOSONAR
public class UserPersonalInfo extends PersonalInfo {

  private String userId;

  private String empployeeId;
}

在 Sonar 报告中显示了 22 个 EqualsAndHashCode 未发现的条件。请帮我解决这个问题。

在项目的根目录下添加 lombok.config 文件并添加:

config.stopBubbling = true
lombok.addLombokGeneratedAnnotation = true

config.stopBubbling = true 告诉 Lombok 这是根 目录并且它不应该在父目录中搜索更多 配置文件(你可以有多个 Lombok 配置文件 在不同的 directories/packages).

lombok.addLombokGeneratedAnnotation = true 告诉 Lombok 为所有生成的方法添加 @lombok.Generated 注解。

Jacoco(至少0.8.0)过滤掉所有用@lombok.Generated注释的方法。

来源:https://medium.com/@mladen.bolic/lombok-data-improve-your-code-coverage-a74fb624a72b