Sonar扫描时跳过指定代码的方法

现在很多项目里使用Sonarqube管理代码质量,团队一般也会有硬性的指标。如果有些代码虽然不合规范,但是在实际环境中不得不这样写,那么我们为了降低issue的数量,可以让Sonar跳过这一段的检测。

方法1:NOSONAR 注释

加在要忽略的代码的后面,可指定跳过这一行代码:

fos = new FileOutputStream(new File("abc.txt"));// NOSONAR

方法2:用 @SuppressWarnings 注解(Java特性)

@SuppressWarnings("findsecbugs:PATH_TRAVERSAL_IN")
 public static void main(String args[]) {
      ......
@SuppressWarnings("squid:S2755")
public static void main(String args[]) {
     ......

注解中的参数是Sonarqube的对应的rule的id,可使Sonar对这段代码忽略这条rule。rule的id可在 Sonar UI 上查看

点击一个issue的详情,右上角的这个就是

如果要忽略多条rule, 可传多个参数:

@SuppressWarnings({"squid:S2755","findsecbugs:XXE_DOCUMENT"})

 

方法3:用sonar.exclusions配置项,忽略整个文件

mvn $MAVEN_CLI_OPTS sonar:sonar 
-Dsonar.exclusions=src/main/generated/**/*,target/generated-sources/**/*

 

  • 12
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值