List of usage examples for org.apache.maven.model.building ModelBuildingRequest VALIDATION_LEVEL_MAVEN_3_0
int VALIDATION_LEVEL_MAVEN_3_0
To view the source code for org.apache.maven.model.building ModelBuildingRequest VALIDATION_LEVEL_MAVEN_3_0.
Click Source Link
From source file:com.doublefx.maven.utils.flexmojos.mavenValidator.FlexMojosCompatibleModelValidator.java
License:Apache License
@Override public void validateEffectiveModel(Model model, ModelBuildingRequest request, ModelProblemCollector problems) { validateStringNotEmpty("modelVersion", problems, Severity.ERROR, model.getModelVersion(), model); validateId("groupId", problems, model.getGroupId(), model); validateId("artifactId", problems, model.getArtifactId(), model); validateStringNotEmpty("packaging", problems, Severity.ERROR, model.getPackaging(), model); if (!model.getModules().isEmpty()) { if (!"pom".equals(model.getPackaging())) { addViolation(problems, Severity.ERROR, "packaging", null, "with value '" + model.getPackaging() + "' is invalid. Aggregator projects " + "require 'pom' as packaging.", model); }/*ww w .j av a2s. c om*/ for (int i = 0, n = model.getModules().size(); i < n; i++) { String module = model.getModules().get(i); if (StringUtils.isBlank(module)) { addViolation(problems, Severity.WARNING, "modules.module[" + i + "]", null, "has been specified without a path to the project directory.", model.getLocation("modules")); } } } validateStringNotEmpty("version", problems, Severity.ERROR, model.getVersion(), model); Severity errOn30 = getSeverity(request, ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_0); validateEffectiveDependencies(problems, model.getDependencies(), false, request); DependencyManagement mgmt = model.getDependencyManagement(); if (mgmt != null) { validateEffectiveDependencies(problems, mgmt.getDependencies(), true, request); } if (request.getValidationLevel() >= ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_2_0) { Set<String> modules = new HashSet<String>(); for (int i = 0, n = model.getModules().size(); i < n; i++) { String module = model.getModules().get(i); if (!modules.add(module)) { addViolation(problems, Severity.ERROR, "modules.module[" + i + "]", null, "specifies duplicate child module " + module, model.getLocation("modules")); } } Severity errOn31 = getSeverity(request, ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_1); validateBannedCharacters("version", problems, errOn31, model.getVersion(), null, model, ILLEGAL_VERSION_CHARS); Build build = model.getBuild(); if (build != null) { for (Plugin p : build.getPlugins()) { validateStringNotEmpty("build.plugins.plugin.artifactId", problems, Severity.ERROR, p.getArtifactId(), p); validateStringNotEmpty("build.plugins.plugin.groupId", problems, Severity.ERROR, p.getGroupId(), p); validatePluginVersion("build.plugins.plugin.version", problems, p.getVersion(), p.getKey(), p, request); validateBoolean("build.plugins.plugin.inherited", problems, errOn30, p.getInherited(), p.getKey(), p); validateBoolean("build.plugins.plugin.extensions", problems, errOn30, p.getExtensions(), p.getKey(), p); validateEffectivePluginDependencies(problems, p, request); } validateResources(problems, build.getResources(), "build.resources.resource", request); validateResources(problems, build.getTestResources(), "build.testResources.testResource", request); } Reporting reporting = model.getReporting(); if (reporting != null) { for (ReportPlugin p : reporting.getPlugins()) { validateStringNotEmpty("reporting.plugins.plugin.artifactId", problems, Severity.ERROR, p.getArtifactId(), p); validateStringNotEmpty("reporting.plugins.plugin.groupId", problems, Severity.ERROR, p.getGroupId(), p); validateStringNotEmpty("reporting.plugins.plugin.version", problems, errOn31, p.getVersion(), p.getKey(), p); } } for (Repository repository : model.getRepositories()) { validateRepository(problems, repository, "repositories.repository", request); } for (Repository repository : model.getPluginRepositories()) { validateRepository(problems, repository, "pluginRepositories.pluginRepository", request); } DistributionManagement distMgmt = model.getDistributionManagement(); if (distMgmt != null) { if (distMgmt.getStatus() != null) { addViolation(problems, Severity.ERROR, "distributionManagement.status", null, "must not be specified.", distMgmt); } validateRepository(problems, distMgmt.getRepository(), "distributionManagement.repository", request); validateRepository(problems, distMgmt.getSnapshotRepository(), "distributionManagement.snapshotRepository", request); } } }
From source file:com.doublefx.maven.utils.flexmojos.mavenValidator.FlexMojosCompatibleModelValidator.java
License:Apache License
private void validateEffectiveDependencies(ModelProblemCollector problems, List<Dependency> dependencies, boolean management, ModelBuildingRequest request) { Severity errOn30 = getSeverity(request, ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_0); String prefix = management ? "dependencyManagement.dependencies.dependency." : "dependencies.dependency."; for (Dependency d : dependencies) { this.validateEffectiveDependency(problems, d, management, prefix, request); if (request.getValidationLevel() >= ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_2_0) { this.validateBoolean(prefix + "optional", problems, errOn30, d.getOptional(), d.getManagementKey(), d);/*from ww w . ja v a 2 s .c om*/ if (!management) { this.validateVersion(prefix + "version", problems, errOn30, d.getVersion(), d.getManagementKey(), d); this.validateEnum(prefix + "scope", problems, Severity.WARNING, d.getScope(), d.getManagementKey(), d, "merged", "external", "internal", "caching", "rsl", "theme", "provided", "compile", "runtime", "test", "system"); } } } }
From source file:com.doublefx.maven.utils.flexmojos.mavenValidator.FlexMojosCompatibleModelValidator.java
License:Apache License
private void validateEffectivePluginDependencies(ModelProblemCollector problems, Plugin plugin, ModelBuildingRequest request) {/* w w w . j a va 2s .com*/ List<Dependency> dependencies = plugin.getDependencies(); if (!dependencies.isEmpty()) { String prefix = "build.plugins.plugin[" + plugin.getKey() + "].dependencies.dependency."; Severity errOn30 = getSeverity(request, ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_0); for (Dependency d : dependencies) { this.validateEffectiveDependency(problems, d, false, prefix, request); this.validateVersion(prefix + "version", problems, errOn30, d.getVersion(), d.getManagementKey(), d); this.validateEnum(prefix + "scope", problems, errOn30, d.getScope(), d.getManagementKey(), d, "compile", "runtime", "system"); } } }
From source file:com.doublefx.maven.utils.flexmojos.mavenValidator.FlexMojosCompatibleModelValidator.java
License:Apache License
private void validateResources(ModelProblemCollector problems, List<Resource> resources, String prefix, ModelBuildingRequest request) {// w w w .j av a2s .com Severity errOn30 = getSeverity(request, ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_0); for (Resource resource : resources) { this.validateStringNotEmpty(prefix + ".directory", problems, Severity.ERROR, resource.getDirectory(), resource); this.validateBoolean(prefix + ".filtering", problems, errOn30, resource.getFiltering(), resource.getDirectory(), resource); } }
From source file:com.doublefx.maven.utils.flexmojos.mavenValidator.FlexMojosCompatibleModelValidator.java
License:Apache License
private boolean validatePluginVersion(String fieldName, ModelProblemCollector problems, String string, String sourceHint, InputLocationTracker tracker, ModelBuildingRequest request) { Severity errOn30 = getSeverity(request, ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_0); if (string == null) { return true; } else if (string.length() > 0 && !this.hasExpression(string) && !"RELEASE".equals(string) && !"LATEST".equals(string)) { return true; } else {//from w w w.j a v a2 s . c om addViolation(problems, errOn30, fieldName, sourceHint, "must be a valid version but is \'" + string + "\'.", tracker); return false; } }
From source file:org.bigtester.ate.experimentals.POMInterpolator.java
License:Apache License
public POMInterpolator() { repositorySystem = Booter.newRepositorySystem(); repositorySystemSession = Booter.newRepositorySystemSession(repositorySystem); PlexusContainer plexusContainer;/*from w ww .ja va 2 s.c om*/ try { plexusContainer = new DefaultPlexusContainer(); } catch (PlexusContainerException e) { throw new IllegalStateException(e); } try { projectBuilder = plexusContainer.lookup(ProjectBuilder.class); } catch (ComponentLookupException e) { throw new IllegalStateException(e); } request = new DefaultProjectBuildingRequest(); request.setRepositorySession(repositorySystemSession); request.setProcessPlugins(false); request.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_0); initRepositories(); }
From source file:org.jboss.maven.extension.dependency.resolver.EffectiveModelBuilder.java
License:Apache License
/** * Build the effective model for the given pom file * * @param pomFile/*from w w w . j ava 2s. c o m*/ * @return effective pom model * @throws ModelBuildingException */ private Model buildModel(File pomFile, ModelResolver modelResolver) throws ModelBuildingException { ModelBuildingRequest request = new DefaultModelBuildingRequest(); request.setPomFile(pomFile); request.setModelResolver(modelResolver); request.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_0); request.setTwoPhaseBuilding(false); // Resolve the complete model in one step request.setSystemProperties(System.getProperties()); ModelBuildingResult result = modelBuilder.build(request); return result.getEffectiveModel(); }