in src/main/java/org/apache/maven/plugins/pmd/exec/PmdExecutor.java [409:432]
private Report removeExcludedViolations(Report report) throws MavenReportException {
if (report == null) {
return null;
}
ExcludeViolationsFromFile excludeFromFile = new ExcludeViolationsFromFile();
try {
excludeFromFile.loadExcludeFromFailuresData(request.getExcludeFromFailureFile());
} catch (MojoExecutionException e) {
throw new MavenReportException("Unable to load exclusions", e);
}
LOG.debug("Removing excluded violations. Using {} configured exclusions.", excludeFromFile.countExclusions());
int violationsBefore = report.getViolations().size();
Report filtered =
report.filterViolations(ruleViolation -> !excludeFromFile.isExcludedFromFailure(ruleViolation));
int numberOfExcludedViolations =
violationsBefore - filtered.getViolations().size();
LOG.debug("Excluded {} violations.", numberOfExcludedViolations);
return filtered;
}