【问题标题】:Unable to exclude files using FindBugs无法使用 FindBugs 排除文件
【发布时间】:2017-11-17 12:57:17
【问题描述】:

我有一个 gradle 项目,我想从 Findbugs 分析中排除一些文件 我的项目中有一些生成的代码,我想排除这些类

这是我的 build.gradle 中的 findbugs 设置

apply plugin: 'findbugs'
findbugs {
    toolVersion "3.0.1"
}

tasks.withType(FindBugs) {
    excludeFilter = rootProject.file('projectConfig/findbugs/excludeFilter.xml')

    reports {
        xml.enabled false
        html.enabled true
        html.stylesheet resources.text.fromFile('../projectConfig/findbugs/findbugs-style.xsl')
    }
}

excludeFilter.xml内容如下

<?xml version="1.0" encoding="UTF-8"?>
<FindBugsFilter>
  <Match>
     <Class name="~.*\.Immutable*\.java" />
  </Match>
  <Match>
     <Class name="~.*\.GsonAdapters*\.java" />
  </Match> 
</FindBugsFilter>

我要排除的示例文件具有以下包名和类名

com.tools.vo.event.GsonAdaptersGetEventDataBalancesVO   
com.tools.vo.event.ImmutableGetEventDataVO

任何关于我可以做些什么来排除这些模式的帮助将不胜感激

谢谢 达米安

【问题讨论】:

    标签: gradle build.gradle findbugs gradle-plugin


    【解决方案1】:

    这似乎是您的排除模式(docsregex)的问题。试试:

    <Match>
      <Or>
        <Class name="~.*?\.Immutable.*" />
        <Class name="~.*?\.GsonAdapters.*" />
      </Or>
    </Match>
    

    详细地说,我将表达式的开头更改为不是“贪婪”,并删除了.java 部分,因为该表达式应用于类名。此外,星号运算符始终适用于前一个元素,因此您遗漏了一些点。

    【讨论】:

      猜你喜欢
      • 2011-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-19
      • 2014-03-29
      • 1970-01-01
      • 2020-12-01
      • 1970-01-01
      相关资源
      最近更新 更多