You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SonarQube代码检查中忽略指定Java类文件?

Sonar扫描忽略指定Java类的实现方案

共有4种常用实现方式,可根据实际场景选择:

1. 类级别注解屏蔽

直接在Java类上添加注解即可,无需修改项目或Sonar服务端配置:

  • 仅屏蔽重复代码块规则:添加@SuppressWarnings("common-java:DuplicatedBlocks"),其中common-java:DuplicatedBlocks是Sonar内置的重复代码块规则key
  • 屏蔽当前类所有Sonar规则:添加@SuppressWarnings("all")

修改后的类示例如下:

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import java.io.Serializable;

@SuppressWarnings("common-java:DuplicatedBlocks")
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown=true)
public class SnbTransactionVo implements Serializable {
    private static final long serialVersionUID = 7178997834378189890L;
    private Integer cellComputerNo;
    private String tradingDate;

    public Integer getCellComputerNo() {
           return cellComputerNo;
    }
    public void setCellComputerNo(Integer cellComputerNo) {
           this.cellComputerNo = cellComputerNo;
    }
    public String getTradingDate() {
        return tradingDate;
    }
    public void setTradingDate(String tradingDate) {
        this.tradingDate = tradingDate;
    }
}

注:该方式默认生效,若未生效可联系Sonar管理员确认服务端是否开启了支持@SuppressWarnings注解的开关。

2. 项目配置文件全局屏蔽指定文件

在项目根目录的sonar-project.properties配置文件中添加以下配置,即可完全忽略该文件的所有Sonar扫描:

sonar.exclusions=**/SnbTransactionVo.java
  • 多个文件用英文逗号分隔即可
  • 支持通配符匹配,例如**/vo/*Vo.java可忽略所有vo目录下以Vo结尾的Java类

3. 项目配置文件仅屏蔽指定文件的重复代码规则

如果不需要完全忽略该文件,仅需要屏蔽重复代码规则,可在sonar-project.properties中添加如下配置:

sonar.issue.ignore.multicriteria=duplicateBlockIgnore
sonar.issue.ignore.multicriteria.duplicateBlockIgnore.ruleKey=common-java:DuplicatedBlocks
sonar.issue.ignore.multicriteria.duplicateBlockIgnore.resourceKey=**/SnbTransactionVo.java

4. Sonar服务端界面配置

进入对应项目的「配置」-「分析范围」-「忽略文件」,添加要忽略的类路径即可,该方式不需要修改项目代码或本地配置。

内容的提问来源于stack exchange,提问作者Parag Kadam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 11:36:05