Плагин SpotBugs Maven исключает каталог
Я использую плагин SpotBugs Maven для статического анализа и хотел бы исключить каталог из проверки. Глядя на spotbugs:check
Цель документации, похоже, что не представляется возможным настроить плагин таким способом. Я также проверил документацию для файла фильтра SpotBugs.
В плагине Apache Maven PMD это можно сделать с помощью параметра excludeRoots:
<excludeRoots>
<excludeRoot>target</excludeRoot>
</excludeRoots>
Можно ли исключить каталог из проверки SpotBugs?
1 ответ
Можно исключить каталог из проверки с помощью SpotBugs, хотя подход отличается от того, который вы описали для PMD. Это двухэтапный процесс:
Сначала создайте файл фильтра XML с указанием критериев для исключаемых каталогов.
Затем в pom.xml ссылаются на этот файл, используя
<excludeFilterFile>
установка. К сожалению, документация для этого параметра очень краткая.
В качестве простого примера:
Создайте файл фильтра с именем ignore.xml, содержащий следующее, которое ссылается на каталог с именем mydir:
<?xml version="1.0" encoding="UTF-8"?> <FindBugsFilter> <Match> <Source name="~mydir\..*"/> </Match> </FindBugsFilter>
Документация для
<Source>
тег здесь. См. Раздел о сопоставлении имен элементов Java для получения подробной информации о том, как указать имя<Source>
,Затем вpom.xml, в спецификации для spotbugs-maven-plugin, включите
<excludeFilterFile>
тег, чтобы mydir игнорировался SpotBugs:<configuration> <excludeFilterFile>ignore.xml</excludeFilterFile> </configuration>
Заметки:
Также есть
<includeFilterFile>
тег. См. Раздел " Определение фильтров ошибок" в документации по использованию.Так же как
Source
SpotBugs предоставляет несколько других способов указать, какой код должен быть включен или исключен из проверки. См. Документацию файла фильтра дляPackage
,Class
,Method
,Local
,Field
а такжеType
теги.