in src/main/java/org/apache/jackrabbit/filevault/maven/packaging/mojo/AbstractValidateMojo.java [266:325]
public void execute() throws MojoExecutionException, MojoFailureException {
if (shouldSkip()) {
return;
}
if (skipValidation) {
getLog().info("Skipping validation");
return;
}
translateLegacyParametersToValidatorParameters();
final Collection<PackageInfo> resolvedDependencies = new LinkedList<>();
// repository structure only defines valid roots
// https://github.com/apache/jackrabbit-filevault-package-maven-plugin/blob/02a853e64d985f075fe88d19101d7c66d741767f/src/main/java/org/apache/jackrabbit/filevault/maven/packaging/impl/DependencyValidator.java#L51
try (ValidationMessagePrinter validationHelper = new ValidationMessagePrinter(getLog(), csvReportFile != null ? csvReportFile.toPath() : null)) {
if (project != null) {
getLog().debug("Clear markers in " + project.getBasedir());
validationHelper.clearPreviousValidationMessages(buildContext, project.getBasedir());
}
try {
Collection<String> validRoots = new LinkedList<>();
for (PackageInfo packageInfo : getPackageInfoFromMavenBasedDependencies(repositoryStructurePackages)) {
for (PathFilterSet set : packageInfo.getFilter().getFilterSets()) {
validRoots.add(set.getRoot());
}
}
if (!validRoots.isEmpty()) {
ValidatorSettings settings = null;
if (validatorsSettings != null) {
settings = validatorsSettings.get(AdvancedFilterValidatorFactory.ID);
} else {
validatorsSettings = new HashMap<>();
}
if (settings == null) {
settings = new ValidatorSettings();
settings.addOption(AdvancedFilterValidatorFactory.OPTION_VALID_ROOTS, StringUtils.join(validRoots, ","));
validatorsSettings.put(AdvancedFilterValidatorFactory.ID, settings);
} else {
String oldValidRoots = settings.getOptions().get(AdvancedFilterValidatorFactory.OPTION_VALID_ROOTS);
settings.addOption(AdvancedFilterValidatorFactory.OPTION_VALID_ROOTS, oldValidRoots + "," + StringUtils.join(validRoots, ","));
}
}
} catch (IOException e) {
throw new MojoExecutionException("Could not get meta information for repositoryStructurePackages '"
+ StringUtils.join(repositoryStructurePackages, ",") + "': " + e.getMessage(), e);
}
try {
resolvedDependencies.addAll(getPackageInfoFromMavenBasedDependencies(dependencies));
} catch (IOException e) {
throw new MojoExecutionException(
"Could not get meta information for dependencies '" + StringUtils.join(dependencies, ",") + "': " + e.getMessage(),
e);
}
// resolve mapping map
resolver = new DependencyResolver(DefaultRepositoryRequest.getRepositoryRequest(session, project), repositorySystem,
resolutionErrorHandler, resolveMap(mapPackageDependencyToMavenGa), resolvedDependencies, getLog());
doExecute(validationHelper);
} catch (IOException e) {
throw new MojoExecutionException("Could not create/write to CSV File", e);
}
}