Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java SpotBugs Maven插件排除目录_Java_Maven_Spotbugs - Fatal编程技术网

Java SpotBugs Maven插件排除目录

Java SpotBugs Maven插件排除目录,java,maven,spotbugs,Java,Maven,Spotbugs,我使用它进行静态分析,我想从检查中排除一个目录。查看spotbug:check,似乎无法以这种方式配置插件。我还检查了文档中的一个spotbug 在Apache Maven PMD插件中,可以使用以下参数完成此操作: 目标 可以从SpotBugs检查中排除目录吗?可以从SpotBugs检查中排除目录,尽管该方法与您为PMD描述的方法不同。这是一个分为两步的过程: 首先指定要排除的目录的条件 然后,在pom.xml中,使用可选的设置引用该文件。不幸的是,它非常简短 举个简单的例子: 创建名为i

我使用它进行静态分析,我想从检查中排除一个目录。查看
spotbug:check
,似乎无法以这种方式配置插件。我还检查了文档中的一个spotbug

在Apache Maven PMD插件中,可以使用以下参数完成此操作:


目标

可以从SpotBugs检查中排除目录吗?

可以从SpotBugs检查中排除目录,尽管该方法与您为PMD描述的方法不同。这是一个分为两步的过程:

  • 首先指定要排除的目录的条件

  • 然后,在pom.xml中,使用可选的
    设置引用该文件。不幸的是,它非常简短

  • 举个简单的例子:

  • 创建名为ignore.xml的筛选器文件,其中包含以下引用名为mydir的目录的内容:

    <?xml version="1.0" encoding="UTF-8"?>
    <FindBugsFilter>
        <Match>
            <Source name="~mydir\..*"/>
        </Match>
    </FindBugsFilter>
    
    
    
    有关的文档。有关如何指定
    名称的详细信息,请参阅上的部分

  • 然后在pom.xml中,在spotbugs maven插件的规范中,包括一个
    标记,以便spotbugs忽略mydir

    <configuration>
      <excludeFilterFile>ignore.xml</excludeFilterFile>
    </configuration>
    
    
    ignore.xml
    
  • 注:

    • 还有一个
      标签。请参阅标题为“指定要在中运行的bug过滤器”的部分

    • 除了
      源代码
      ,SpotBugs还提供了其他几种方法来指定要检查或排除哪些代码。有关
      方法
      本地
      字段
      类型
      标记,请参阅筛选文件文档


    Spotbug似乎从相反的方向解决了这个问题。你不会告诉它该忽略什么,你会告诉它该看什么:我尝试了这个解决方案,但它不起作用。根据这一点,SpotBugs
    SourceFilter
    无法处理完整的文件路径。@Boris尝试使用
    Package
    而不是
    Source
    。它是有效的。@sgnsajgon我在回答中提到了
    Package
    ,但这对OP有什么帮助?他们的问题是如何排除特定目录,而不是包。@Boris看起来可能需要OpenIssue的实现来解决这个问题。您将把ignore.xml放在哪里?