List of usage examples for org.apache.maven.model.building ModelBuildingRequest setValidationLevel
ModelBuildingRequest setValidationLevel(int validationLevel);
From source file:biz.itcf.maven.plugins.dependencytransfer.TransferMojo.java
License:Apache License
private ArtifactResult resolveParent(Artifact pomArtifact) throws MojoFailureException { try {/*from w w w.ja va 2 s .co m*/ ModelBuildingRequest buildingRequest = new DefaultModelBuildingRequest(); buildingRequest.setModelResolver(new AvailableModelResolver(repoSession, null, null, artifactResolver, remoteRepositoryManager, projectRepos)); buildingRequest.setPomFile(pomArtifact.getFile()); buildingRequest.setTwoPhaseBuilding(false); buildingRequest.setSystemProperties(System.getProperties()); buildingRequest.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); ModelBuildingResult build = modelBuilder.build(buildingRequest); Parent dependencyParent = build.getRawModel().getParent(); if (dependencyParent != null) { ArtifactRequest parentArtifactRequest = new ArtifactRequest(); parentArtifactRequest.setArtifact(new DefaultArtifact(dependencyParent.getGroupId(), dependencyParent.getArtifactId(), "pom", dependencyParent.getVersion())); parentArtifactRequest.setRepositories(projectRepos); return repoSystem.resolveArtifact(repoSession, parentArtifactRequest); } else { return null; } } catch (ArtifactResolutionException e) { throw new MojoFailureException("Could not resolve parent artifact.", e); } catch (ModelBuildingException e) { throw new MojoFailureException("Could not build Maven model for given artifact.", e); } }
From source file:com.buschmais.jqassistant.plugin.m2repo.impl.scanner.EffectiveModelBuilder.java
@Override public Model getModel(final File pomFile) throws IOException { DefaultModelBuilder builder = new DefaultModelBuilderFactory().newInstance(); ModelBuildingRequest req = new DefaultModelBuildingRequest(); req.setProcessPlugins(false);// www. j av a2 s.com req.setPomFile(pomFile); req.setModelResolver(modelResolver); req.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); req.setSystemProperties(System.getProperties()); builder.setModelValidator(new ModelValidatorImpl()); try { return builder.build(req).getEffectiveModel(); } catch (ModelBuildingException e) { LOGGER.warn("Cannot build effective model for " + pomFile.getAbsolutePath(), e); return new EffectiveModel(rawModelBuilder.getModel(pomFile)); } }
From source file:com.github.nethad.clustermeister.provisioning.dependencymanager.MavenRepositorySystem.java
License:Apache License
/** * Resolve the effective Maven model (pom) for a POM file. * /*from w w w . jav a2s . com*/ * This resolves the POM hierarchy (parents and modules) and creates an * overall model. * * @param pom the POM file to resolve. * @return the effective model. */ protected Model getEffectiveModel(File pom) { ModelBuildingRequest req = new DefaultModelBuildingRequest(); req.setProcessPlugins(false); req.setPomFile(pom); req.setModelResolver(new SimpleModelResolver(repositorySystem, createSession(), getRepositories(Collections.EMPTY_LIST))); req.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); ModelBuilder builder = new DefaultModelBuilderFactory().newInstance(); try { return builder.build(req).getEffectiveModel(); } catch (ModelBuildingException ex) { logger.warn("Could not build maven model.", ex); } return new Model(); }
From source file:com.tobedevoured.naether.maven.Project.java
License:Apache License
/** * Load Maven pom//from w ww .j av a 2 s . c o m * * @param pomPath String path * @param localRepo String * @param repositories {@link Collection<RemoteRepository>} * @return {@link Model} * @throws ProjectException if fails to open, read, or parse the POM */ public static Model loadPOM(String pomPath, String localRepo, Collection<RemoteRepository> repositories) throws ProjectException { RepositoryClient repoClient = new RepositoryClient(localRepo); NaetherModelResolver resolver = new NaetherModelResolver(repoClient, repositories); ModelBuildingRequest req = new DefaultModelBuildingRequest(); req.setProcessPlugins(false); req.setPomFile(new File(pomPath)); req.setModelResolver(resolver); req.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); DefaultModelBuilder builder = (new DefaultModelBuilderFactory()).newInstance(); try { return builder.build(req).getEffectiveModel(); } catch (ModelBuildingException e) { throw new ProjectException("Failed to build project from pom", e); } }
From source file:fr.inria.spirals.repairnator.process.maven.MavenHelper.java
public static Model readPomXml(File pomXml, String localMavenRepository) { ModelBuildingRequest req = new DefaultModelBuildingRequest(); req.setProcessPlugins(true);/*from www . j av a 2s.c om*/ req.setPomFile(pomXml); req.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); req.setModelResolver(new RepositoryModelResolver(localMavenRepository)); DefaultModelBuilder defaultModelBuilder = new DefaultModelBuilderFactory().newInstance(); // we try to build the model, and if we fail, we try to get the raw model try { ModelBuildingResult modelBuildingResult = defaultModelBuilder.build(req); return modelBuildingResult.getEffectiveModel(); } catch (ModelBuildingException e) { LOGGER.error("Error while building complete model. The raw model will be used. Error message: " + e.getMessage()); return defaultModelBuilder.buildRawModel(pomXml, ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL, true) .get(); } }
From source file:io.tesla.aether.internal.DefaultTeslaAether.java
License:Open Source License
public Model resolveModel(File pom) throws ModelBuildingException { RequestTrace trace = new RequestTrace(pom); ModelBuildingRequest modelRequest = new DefaultModelBuildingRequest(); modelRequest.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); modelRequest.setProcessPlugins(false); modelRequest.setTwoPhaseBuilding(false); modelRequest.setSystemProperties(toProperties(session.getUserProperties(), session.getSystemProperties())); ////from w w w .jav a 2 s . com // The model cache and default model resolver should be injected // modelRequest.setModelCache(new DefaultModelCache()); modelRequest.setModelResolver(new DefaultModelResolver(session, trace.newChild(modelRequest), "bithub", artifactResolver, remoteRepositoryManager, remoteRepositories)); modelRequest.setPomFile(pom); return modelBuilder.build(modelRequest).getEffectiveModel(); }
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 a v a 2s . co 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(); }
From source file:org.metaservice.core.maven.MavenPomParser.java
License:Apache License
@Override public List<Model> parse(Reader s, ArchiveAddress archiveParameters) { File file = null;//from w w w . ja va 2 s .co m try { file = File.createTempFile("temp", ".pom"); FileWriter writer = new FileWriter(file); IOUtils.copy(s, writer); writer.close(); ModelBuildingRequest req = new DefaultModelBuildingRequest(); req.setProcessPlugins(false); req.setPomFile(file); req.setModelResolver(makeModelResolver()); req.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); DefaultModelBuilderFactory factory = new DefaultModelBuilderFactory(); org.apache.maven.model.Model model = factory.newInstance().build(req).getEffectiveModel(); return Arrays.asList(model); } catch (IOException | ModelBuildingException e) { throw new RuntimeException(e); } finally { if (file != null && file.exists()) { file.delete(); } } }
From source file:org.ModelBuilderDemo.java
License:Open Source License
public static void main(String[] args) throws Exception { /*//from ww w.j a va2 s. c o m * setup the container and get us some interesting components */ PlexusContainer container = new DefaultPlexusContainer(); ModelBuilder modelBuilder = container.lookup(ModelBuilder.class); ModelWriter modelWriter = container.lookup(ModelWriter.class); /* * build some effective model */ ModelSource modelSource = new UrlModelSource( ModelBuilderDemo.class.getResource("/repo/demo/dependency/1.0/pom.xml")); ModelBuildingRequest request = new DefaultModelBuildingRequest(); request.setModelSource(modelSource); request.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); request.setSystemProperties(System.getProperties()); request.setModelResolver(new SimpleModelResolver()); ModelBuildingResult result = modelBuilder.build(request); Model effectivePom = result.getEffectiveModel(); StringWriter writer = new StringWriter(); modelWriter.write(writer, null, effectivePom); System.out.println(writer.toString()); }
From source file:org.sonatype.sisu.maven.bridge.internal.DefaultMavenBridge.java
License:Open Source License
public Model buildModel(File pom, Repository... repositories) throws ModelBuildingException { ModelResolver mr = modelResolver.newCopy(); if (repositories != null) { for (Repository repository : repositories) { try { mr.addRepository(repository); } catch (InvalidRepositoryException e) { logger.warn(String.format("Could not use repository [%s]", repository.getUrl()), e); }//from w w w .j a v a 2s .c o m } } ModelBuildingRequest modelRequest = new DefaultModelBuildingRequest(); modelRequest.setModelSource(new FileModelSource(pom)); modelRequest.setSystemProperties(System.getProperties()); modelRequest.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); modelRequest.setLocationTracking(false); modelRequest.setProcessPlugins(false); modelRequest.setModelResolver(mr); ModelBuildingResult modelResult = modelBuilder.build(modelRequest); Model model = modelResult.getEffectiveModel(); return model; }