SonarQube忽略@SuppressWarnings(“ all”)命令

时间:2019-12-04 13:57:45

标签: java sonarqube

我有一个简单的POJO类,该类具有isValid方法:

public class MyClass{
    ...

    @ValidationMethod(message = "age must be ...")
    @JsonIgnore
    @SuppressWarnings("all")
    public boolean isValid() {
       return age > 10;
    }
}

我喜欢SonarQube在检查项目时忽略此方法。

我不想删除项目中的所有测试覆盖率检查,但不想检查此特定行。

因此,我按照建议的herehere在方法的顶部添加了@SuppressWarnings("all")。我也尝试在行尾使用//NOSONAR

 public boolean isValid() {
    return age > 10;//NOSONAR
}

但是,在两种情况下,SonarQube都会忽略抑制请求并给出有关

的错误
  

“测试未涵盖”

我们在这里缺少什么? SonarQube本身还有更多设置需要做吗?我们做错了吗?

enter image description here

1 个答案:

答案 0 :(得分:0)

因此,按照user7294900的评论,我通过告诉声纳完全忽略该类而得以部分成功。

这不是我们的最初要求-我们只想忽略该方法。

我们通过在<sonar.exclusions>部分的pom.xml中添加以下<properties>来完成此操作,因此最终结果看起来像这样:

 <properties>     
    <mainClass>com.example.MyApplication</mainClass>
    <sonar.exclusions>**/MyClass.java</sonar.exclusions>
</properties>