List of usage examples for org.apache.maven.model.building DefaultModelBuilderFactory DefaultModelBuilderFactory
DefaultModelBuilderFactory
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);//from w w w . ja va2 s . co m 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. * //w ww . ja v a 2s. co m * 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.google.devtools.build.workspace.maven.DefaultModelResolver.java
License:Open Source License
public DefaultModelResolver() { repositories = Sets.newHashSet();//from w ww.j av a2 s . c o m repositories.add(MavenConnector.getMavenCentral()); ruleNameToModelSource = Maps.newHashMap(); modelBuilder = new DefaultModelBuilderFactory().newInstance() .setProfileSelector(new DefaultProfileSelector()) .setPluginConfigurationExpander(new DefaultPluginConfigurationExpander()) .setPluginManagementInjector(new DefaultPluginManagementInjector()) .setDependencyManagementImporter(new DefaultDependencyManagementImporter()) .setDependencyManagementInjector(new DefaultDependencyManagementInjector()); }
From source file:com.netflix.nebula.lint.rule.dependency.provider.MavenBomRecommendationProvider.java
License:Apache License
private Map<String, String> getMavenRecommendations() throws UnresolvableModelException, FileNotFoundException, ModelBuildingException { Map<String, String> recommendations = new HashMap<>(); Set<File> recommendationFiles = getBomsOnConfiguration(); for (File recommendation : recommendationFiles) { if (!recommendation.getName().endsWith("pom")) { break; }// w w w. j av a2s . c om DefaultModelBuildingRequest request = new DefaultModelBuildingRequest(); request.setModelResolver(new ModelResolver() { @Override public ModelSource2 resolveModel(String groupId, String artifactId, String version) throws UnresolvableModelException { String notation = groupId + ":" + artifactId + ":" + version + "@pom"; org.gradle.api.artifacts.Dependency dependency = project.getDependencies().create(notation); org.gradle.api.artifacts.Configuration configuration = project.getConfigurations() .detachedConfiguration(dependency); try { File file = configuration.getFiles().iterator().next(); return new SimpleModelSource(new java.io.FileInputStream(file)); } catch (Exception e) { throw new UnresolvableModelException(e, groupId, artifactId, version); } } @Override public ModelSource2 resolveModel(Dependency dependency) throws UnresolvableModelException { return resolveModel(dependency.getGroupId(), dependency.getArtifactId(), dependency.getVersion()); } @Override public ModelSource2 resolveModel(Parent parent) throws UnresolvableModelException { return resolveModel(parent.getGroupId(), parent.getArtifactId(), parent.getVersion()); } @Override public void addRepository(Repository repository) throws InvalidRepositoryException { // do nothing } @Override public void addRepository(Repository repository, boolean bool) throws InvalidRepositoryException { // do nothing } @Override public ModelResolver newCopy() { return this; // do nothing } }); request.setModelSource(new SimpleModelSource(new java.io.FileInputStream(recommendation))); request.setSystemProperties(System.getProperties()); DefaultModelBuilder modelBuilder = new DefaultModelBuilderFactory().newInstance(); modelBuilder.setModelInterpolator(new ProjectPropertiesModelInterpolator(project)); ModelBuildingResult result = modelBuilder.build(request); log.info("using bom: " + result.getEffectiveModel().getId()); Model model = result.getEffectiveModel(); if (model == null) { break; } org.apache.maven.model.DependencyManagement dependencyManagement = model.getDependencyManagement(); if (dependencyManagement == null) { break; } for (Dependency d : dependencyManagement.getDependencies()) { recommendations.put(d.getGroupId() + ":" + d.getArtifactId(), d.getVersion()); // overwrites previous values } } return recommendations; }
From source file:com.tobedevoured.naether.maven.Project.java
License:Apache License
/** * Load Maven pom//from w w w . j a v 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);// www. j a v a 2 s . c o m 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:illarion.download.maven.MavenDownloader.java
License:Open Source License
private void setupServiceLocator() { serviceLocator.addService(ArtifactDescriptorReader.class, DefaultArtifactDescriptorReader.class); serviceLocator.addService(VersionResolver.class, DefaultVersionResolver.class); serviceLocator.addService(VersionRangeResolver.class, DefaultVersionRangeResolver.class); serviceLocator.addService(MetadataGeneratorFactory.class, SnapshotMetadataGeneratorFactory.class); serviceLocator.addService(MetadataGeneratorFactory.class, VersionsMetadataGeneratorFactory.class); serviceLocator.addService(RepositoryConnectorFactory.class, BasicRepositoryConnectorFactory.class); serviceLocator.addService(TransporterFactory.class, HttpTransporterFactory.class); serviceLocator.setServices(ModelBuilder.class, new DefaultModelBuilderFactory().newInstance()); }
From source file:io.tesla.aether.guice.TeslaAetherModule.java
License:Open Source License
public void configure(Binder binder) { binder.install(new MavenAetherModule()); binder.bind(ModelBuilder.class).toInstance(new DefaultModelBuilderFactory().newInstance()); binder.bind(RemoteRepository.class).toProvider(RemoteRepositoryProvider.class); binder.bind(RepositorySystem.class).toProvider(RepositorySystemProvider.class); binder.bind(RepositorySystemSession.class).toProvider(RepositorySystemSessionProvider.class); }
From source file:io.tesla.aether.internal.DefaultTeslaAether.java
License:Open Source License
public DefaultTeslaAether(List<RemoteRepository> remoteRepositories, RepositorySystemSession repositorySystemSession) { DefaultServiceLocator locator = MavenRepositorySystemUtils.newServiceLocator(); locator.addService(RepositoryConnectorFactory.class, FileRepositoryConnectorFactory.class); locator.addService(RepositoryConnectorFactory.class, AetherRepositoryConnectorFactory.class); locator.addService(FileProcessor.class, DefaultFileProcessor.class); this.system = locator.getService(RepositorySystem.class); this.session = repositorySystemSession; this.modelBuilder = new DefaultModelBuilderFactory().newInstance(); this.artifactResolver = locator.getService(ArtifactResolver.class); this.remoteRepositoryManager = locator.getService(RemoteRepositoryManager.class); this.remoteRepositories = remoteRepositories; }
From source file:io.tesla.aether.internal.DefaultTeslaAether.java
License:Open Source License
private void init(File localRepository, List<Repository> repositories) { remoteRepositories = new ArrayList<RemoteRepository>(); for (Repository r : repositories) { RemoteRepository.Builder builder = new RemoteRepository.Builder(r.getId(), "default", r.getUrl()); if (r.getUsername() != null && r.getPassword() != null) { Authentication auth = new AuthenticationBuilder().addUsername(r.getUsername()) .addPassword(r.getPassword()).build(); builder.setAuthentication(auth); }//from w w w.j a v a2 s . c o m this.remoteRepositories.add(builder.build()); } DefaultServiceLocator locator = MavenRepositorySystemUtils.newServiceLocator(); locator.addService(RepositoryConnectorFactory.class, FileRepositoryConnectorFactory.class); locator.addService(RepositoryConnectorFactory.class, AetherRepositoryConnectorFactory.class); locator.addService(FileProcessor.class, DefaultFileProcessor.class); this.system = locator.getService(RepositorySystem.class); this.session = new RepositorySystemSessionProvider(localRepository).get(); this.modelBuilder = new DefaultModelBuilderFactory().newInstance(); this.artifactResolver = locator.getService(ArtifactResolver.class); this.remoteRepositoryManager = locator.getService(RemoteRepositoryManager.class); }