List of usage examples for org.apache.maven.project ProjectBuildingRequest setActiveProfileIds
void setActiveProfileIds(List<String> activeProfileIds);
From source file:com.liferay.maven.plugins.AbstractToolsLiferayMojo.java
License:Open Source License
protected MavenProject resolveProject(Artifact artifact) throws Exception { Artifact pomArtifact = artifact;/*from w w w. j a v a 2 s . com*/ String type = artifact.getType(); if (!type.equals("pom")) { pomArtifact = artifactFactory.createArtifact(artifact.getGroupId(), artifact.getArtifactId(), artifact.getVersion(), "", "pom"); } ProjectBuildingRequest projectBuildingRequest = new DefaultProjectBuildingRequest(); projectBuildingRequest.setLocalRepository(localArtifactRepository); projectBuildingRequest.setRemoteRepositories(remoteArtifactRepositories); projectBuildingRequest.setRepositorySession(session.getRepositorySession()); List<String> activeProfileIds = new ArrayList<String>(); MavenExecutionRequest mavenExecutionRequest = session.getRequest(); for (String activeProfile : mavenExecutionRequest.getActiveProfiles()) { activeProfileIds.add(activeProfile); } projectBuildingRequest.setActiveProfileIds(activeProfileIds); projectBuildingRequest.setProfiles(mavenExecutionRequest.getProfiles()); ProjectBuildingResult projectBuildingResult = projectBuilder.build(pomArtifact, true, projectBuildingRequest); return projectBuildingResult.getProject(); }
From source file:fr.fastconnect.factory.tibco.bw.maven.BWLifecycleParticipant.java
License:Apache License
private List<MavenProject> prepareProjects(List<MavenProject> projects, MavenSession session) throws MavenExecutionException { List<MavenProject> result = new ArrayList<MavenProject>(); ProjectBuildingRequest projectBuildingRequest = session.getProjectBuildingRequest(); for (MavenProject mavenProject : projects) { logger.debug("project: " + mavenProject.getGroupId() + ":" + mavenProject.getArtifactId()); List<String> oldActiveProfileIds = projectBuildingRequest.getActiveProfileIds(); try {//ww w . j a va 2 s . c o m List<String> activeProfileIds = activateProfilesWithProperties(mavenProject, oldActiveProfileIds); if (activeProfileIds.size() != oldActiveProfileIds.size()) { projectBuildingRequest.setActiveProfileIds(activeProfileIds); if (mavenProject.getFile() != null) { List<File> files = new ArrayList<File>(); files.add(mavenProject.getFile()); List<ProjectBuildingResult> results = null; try { results = projectBuilder.build(files, true, projectBuildingRequest); } catch (ProjectBuildingException e) { } for (ProjectBuildingResult projectBuildingResult : results) { mavenProject = projectBuildingResult.getProject(); } } } } finally { projectBuildingRequest.setActiveProfileIds(oldActiveProfileIds); } if (mavenProject.getPackaging().startsWith(AbstractBWMojo.BWEAR_TYPE) || "true".equals(propertiesManager.getPropertyValue("enableBWLifecycle"))) { addTIBCODependenciesToPlugin(mavenProject, logger); } result.add(mavenProject); } return result; }
From source file:net.flexmojos.oss.plugin.war.CopyMojo.java
License:Open Source License
private MavenProject getProject(Artifact artifact) throws MojoExecutionException { try {/*from w ww .ja v a 2 s. c om*/ ProjectBuildingRequest request = new DefaultProjectBuildingRequest(); request.setLocalRepository(localRepository); request.setRemoteRepositories(remoteRepositories); request.setResolveDependencies(true); ArrayList<String> ids = new ArrayList<String>(); for (Profile profile : project.getActiveProfiles()) { ids.add(profile.getId()); } request.setActiveProfileIds(ids); request.setRepositorySession(session.getRepositorySession()); return projectBuilder.build(artifact, request).getProject(); } catch (ProjectBuildingException e) { getLog().warn("Failed to retrieve pom for " + artifact); return null; } }
From source file:net.oneandone.maven.embedded.Maven.java
License:Apache License
public MavenProject loadPom(FileNode file, boolean resolve, Properties userProperties, List<String> profiles, List<Dependency> dependencies) throws RepositoryException, ProjectBuildingException { ProjectBuildingRequest request; ProjectBuildingResult result;/*w w w .j a v a 2 s .c o m*/ List<Exception> problems; request = new DefaultProjectBuildingRequest(); request.setRepositorySession(repositorySession); request.setRemoteRepositories(remoteLegacy); request.setProcessPlugins(false); request.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); request.setSystemProperties(System.getProperties()); if (userProperties != null) { request.setUserProperties(userProperties); } // If you don't turn this into RepositoryMerging.REQUEST_DOMINANT the dependencies will be resolved against Maven Central // and not against the configured repositories. The default of the DefaultProjectBuildingRequest is // RepositoryMerging.POM_DOMINANT. request.setRepositoryMerging(ProjectBuildingRequest.RepositoryMerging.REQUEST_DOMINANT); request.setResolveDependencies(resolve); if (profiles != null) { request.setActiveProfileIds(profiles); } result = builder.build(file.toPath().toFile(), request); // TODO: i've seen these collection errors for a dependency with ranges. Why does Aether NOT throw an exception in this case? if (result.getDependencyResolutionResult() != null) { problems = result.getDependencyResolutionResult().getCollectionErrors(); if (problems != null && !problems.isEmpty()) { throw new RepositoryException("collection errors: " + problems.toString(), problems.get(0)); } } if (dependencies != null) { if (!resolve) { throw new IllegalArgumentException(); } dependencies.addAll(result.getDependencyResolutionResult().getDependencies()); } return result.getProject(); }
From source file:org.debian.dependency.DefaultDependencyCollection.java
License:Apache License
private MavenProject buildProject(final String groupId, final String artifactId, final String version, final MavenSession session) throws DependencyResolutionException { Artifact artifact = repositorySystem.createProjectArtifact(groupId, artifactId, version); ProjectBuildingRequest request = new DefaultProjectBuildingRequest(session.getProjectBuildingRequest()); request.setActiveProfileIds(null); request.setInactiveProfileIds(null); request.setProfiles(null);/*ww w. j a va2 s. c o m*/ request.setResolveDependencies(false); // we may filter them out request.setUserProperties(null); request.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); try { ProjectBuildingResult result = projectBuilder.build(artifact, request); return result.getProject(); } catch (ProjectBuildingException e) { throw new DependencyResolutionException(e); } }
From source file:org.debian.dependency.sources.SCMSourceRetrieval.java
License:Apache License
private MavenProject constructProject(final Artifact artifact, final MavenSession session) throws SourceRetrievalException { try {//from w w w .ja va 2 s .co m // pom files are not set up in projects which are not in the workspace, we add them in manually since they are needed Artifact pomArtifact = repositorySystem.createProjectArtifact(artifact.getGroupId(), artifact.getArtifactId(), artifact.getVersion()); pomArtifact = resolveArtifact(pomArtifact, session); ProjectBuildingRequest request = new DefaultProjectBuildingRequest(session.getProjectBuildingRequest()); request.setActiveProfileIds(null); request.setInactiveProfileIds(null); request.setUserProperties(null); ProjectBuildingResult result = projectBuilder.build(artifact, request); MavenProject mavenProject = result.getProject(); mavenProject.setArtifact(resolveArtifact(mavenProject.getArtifact(), session)); mavenProject.setFile(pomArtifact.getFile()); return mavenProject; } catch (ProjectBuildingException e) { throw new SourceRetrievalException(e); } }
From source file:org.jboss.ce.mvns2i.MavenUtils.java
License:Open Source License
public String getDeploymentDir(String projectDir) throws Exception { ProjectBuilder projectBuilder = create(ProjectBuilder.class); File pomFile = new File(projectDir, "pom.xml"); MavenExecutionRequest mer = new DefaultMavenExecutionRequest(); File mvnDir;//from w w w. j a v a2s . c o m String m2dir = System.getProperty("maven.repo"); if (m2dir != null) { mvnDir = new File(m2dir); } else { mvnDir = new File(System.getProperty("user.home"), ".m2/repository"); } if (mvnDir.exists() == false) { //noinspection ResultOfMethodCallIgnored mvnDir.mkdirs(); } log.info(String.format("Using Maven repository: %s", mvnDir)); final Checker checker = new Checker(); ProjectBuildingRequest request = mer.getProjectBuildingRequest(); request.setActiveProfileIds(Collections.singletonList(checker.getDefaultProfile())); MavenArtifactRepository artifactRepository = new MavenArtifactRepository("local", mvnDir.toURI().toString(), create(ArtifactRepositoryLayout.class), new ArtifactRepositoryPolicy(), new ArtifactRepositoryPolicy()); request.setLocalRepository(artifactRepository); DefaultRepositorySystemSession session = MavenRepositorySystemUtils.newSession(); session.setOffline(!Boolean.getBoolean("online")); // use offline by default LocalRepository localRepository = new LocalRepository(mvnDir); LocalRepositoryManager localRepositoryManager = create(LocalRepositoryManagerFactory.class) .newInstance(session, localRepository); session.setLocalRepositoryManager(localRepositoryManager); request.setRepositorySession(session); MavenRepositorySystem mrs = create(MavenRepositorySystem.class); ArtifactRepository remoteRepository = mrs.createDefaultRemoteRepository(mer); List<ArtifactRepository> repositories = Arrays.asList(artifactRepository, remoteRepository); request.setRemoteRepositories(repositories); MavenProject project = projectBuilder.build(pomFile, request).getProject(); recurse(projectBuilder, request, checker, new File(projectDir), "", project); return checker.result(); }
From source file:org.jszip.maven.RunMojo.java
License:Apache License
private List<MavenProject> buildReactorProjects() throws Exception { List<MavenProject> projects = new ArrayList<MavenProject>(); for (MavenProject p : reactorProjects) { ProjectBuildingRequest request = ProjectBuildingRequestCreator.create(session); request.setProcessPlugins(true); request.setProfiles(request.getProfiles()); request.setActiveProfileIds(session.getRequest().getActiveProfiles()); request.setInactiveProfileIds(session.getRequest().getInactiveProfiles()); request.setRemoteRepositories(session.getRequest().getRemoteRepositories()); request.setSystemProperties(session.getSystemProperties()); request.setUserProperties(session.getUserProperties()); request.setRemoteRepositories(session.getRequest().getRemoteRepositories()); request.setPluginArtifactRepositories(session.getRequest().getPluginArtifactRepositories()); request.setLocalRepository(localRepository); request.setBuildStartTime(session.getRequest().getStartTime()); request.setResolveDependencies(true); request.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_STRICT); projects.add(projectBuilder.build(p.getFile(), request).getProject()); }/*from w w w. j a va 2 s. c o m*/ return new ProjectSorter(projects).getSortedProjects(); }
From source file:org.phpmaven.test.AbstractTestCase.java
License:Apache License
protected MavenData createProjectBuildingRequest() throws Exception { final File localReposFile = this.getLocalReposDir(); final SimpleLocalRepositoryManager localRepositoryManager = new SimpleLocalRepositoryManager( localReposFile);/*from w w w . j a va 2 s . c o m*/ final DefaultRepositorySystemSession repositorySession = new DefaultRepositorySystemSession(); for (final Map.Entry<Object, Object> entry : System.getProperties().entrySet()) { repositorySession.getSystemProperties().put(entry.getKey().toString(), entry.getValue().toString()); } repositorySession.getSystemProperties().put("java.version", System.getProperty("java.version")); repositorySession.setDependencyGraphTransformer( new ChainedDependencyGraphTransformer(new ConflictMarker(), new JavaEffectiveScopeCalculator(), new NearestVersionConflictResolver(), new JavaDependencyContextRefiner())); final MavenExecutionRequest request = new DefaultMavenExecutionRequest(); final MavenExecutionRequestPopulator populator = lookup(MavenExecutionRequestPopulator.class); populator.populateDefaults(request); final SettingsBuildingRequest settingsRequest = new DefaultSettingsBuildingRequest(); settingsRequest.setGlobalSettingsFile(MavenCli.DEFAULT_GLOBAL_SETTINGS_FILE); settingsRequest.setUserSettingsFile(MavenCli.DEFAULT_USER_SETTINGS_FILE); settingsRequest.setSystemProperties(request.getSystemProperties()); settingsRequest.setUserProperties(request.getUserProperties()); final SettingsBuilder settingsBuilder = lookup(SettingsBuilder.class); final SettingsBuildingResult settingsResult = settingsBuilder.build(settingsRequest); final MavenExecutionRequestPopulator executionRequestPopulator = lookup( MavenExecutionRequestPopulator.class); executionRequestPopulator.populateFromSettings(request, settingsResult.getEffectiveSettings()); final ArtifactRepositoryLayout layout = lookup(ArtifactRepositoryLayout.class); final ArtifactRepositoryPolicy policy = new ArtifactRepositoryPolicy(); final MavenArtifactRepository repos = new MavenArtifactRepository("local", localReposFile.toURI().toURL().toString(), layout, policy, policy); request.setLocalRepository(repos); request.setSystemProperties(new Properties(System.getProperties())); request.getSystemProperties().put("java.version", System.getProperty("java.version")); repositorySession.setLocalRepositoryManager(localRepositoryManager); final ProjectBuildingRequest buildingRequest = new DefaultProjectBuildingRequest(); buildingRequest.setLocalRepository(request.getLocalRepository()); buildingRequest.setRepositorySession(repositorySession); buildingRequest.setSystemProperties(request.getSystemProperties()); buildingRequest.getRemoteRepositories().addAll(request.getRemoteRepositories()); buildingRequest.setProfiles(request.getProfiles()); buildingRequest.setActiveProfileIds(request.getActiveProfiles()); buildingRequest.setProcessPlugins(false); buildingRequest.setResolveDependencies(false); final MavenData data = new MavenData(); data.executionRequest = request; data.projectBuildingRequest = buildingRequest; return data; }
From source file:org.phpmaven.test.it.AbstractTestCase.java
License:Apache License
protected MavenData createProjectBuildingRequest() throws Exception { final File localReposFile = this.getLocalReposDir(); final SimpleLocalRepositoryManager localRepositoryManager = new SimpleLocalRepositoryManager( localReposFile);//w w w. ja v a 2 s . c o m final DefaultRepositorySystemSession repositorySession = new DefaultRepositorySystemSession(); for (final Map.Entry<Object, Object> entry : System.getProperties().entrySet()) { repositorySession.getSystemProperties().put(entry.getKey().toString(), entry.getValue().toString()); } repositorySession.getSystemProperties().put("java.version", System.getProperty("java.version")); final MavenExecutionRequest request = new DefaultMavenExecutionRequest(); final MavenExecutionRequestPopulator populator = lookup(MavenExecutionRequestPopulator.class); populator.populateDefaults(request); final SettingsBuildingRequest settingsRequest = new DefaultSettingsBuildingRequest(); settingsRequest.setGlobalSettingsFile(MavenCli.DEFAULT_GLOBAL_SETTINGS_FILE); settingsRequest.setUserSettingsFile(MavenCli.DEFAULT_USER_SETTINGS_FILE); settingsRequest.setSystemProperties(request.getSystemProperties()); settingsRequest.setUserProperties(request.getUserProperties()); final SettingsBuilder settingsBuilder = lookup(SettingsBuilder.class); final SettingsBuildingResult settingsResult = settingsBuilder.build(settingsRequest); final MavenExecutionRequestPopulator executionRequestPopulator = lookup( MavenExecutionRequestPopulator.class); executionRequestPopulator.populateFromSettings(request, settingsResult.getEffectiveSettings()); final ArtifactRepositoryLayout layout = lookup(ArtifactRepositoryLayout.class); final ArtifactRepositoryPolicy policy = new ArtifactRepositoryPolicy(); final MavenArtifactRepository repos = new MavenArtifactRepository("local", localReposFile.toURI().toURL().toString(), layout, policy, policy); final MavenArtifactRepository userRepos = new MavenArtifactRepository("user", new File(MavenCli.userMavenConfigurationHome, "/repository").toURI().toURL().toString(), layout, policy, policy); request.setLocalRepository(repos); // skip wrapping local repository as a remote one for hudson if (!this.isHudsonBuild()) { request.getRemoteRepositories().add(userRepos); } request.setSystemProperties(new Properties(System.getProperties())); request.getSystemProperties().put("java.version", System.getProperty("java.version")); repositorySession.setLocalRepositoryManager(localRepositoryManager); final ProjectBuildingRequest buildingRequest = new DefaultProjectBuildingRequest(); buildingRequest.setLocalRepository(request.getLocalRepository()); buildingRequest.setRepositorySession(repositorySession); buildingRequest.setSystemProperties(request.getSystemProperties()); // skip wrapping local repository as a remote one for hudson if (!this.isHudsonBuild()) { buildingRequest.getPluginArtifactRepositories().add(userRepos); } buildingRequest.getRemoteRepositories().addAll(request.getRemoteRepositories()); buildingRequest.setProfiles(request.getProfiles()); buildingRequest.setActiveProfileIds(request.getActiveProfiles()); buildingRequest.setProcessPlugins(false); buildingRequest.setResolveDependencies(false); final MavenData data = new MavenData(); data.executionRequest = request; data.projectBuildingRequest = buildingRequest; return data; }