ProjectBuildingRequest configuration = new DefaultProjectBuildingRequest(); configuration.setLocalRepository( repositoryRequest.getLocalRepository() ); configuration.setRemoteRepositories( repositoryRequest.getRemoteRepositories() ); configuration.setValidationLevel( ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL ); configuration.setProcessPlugins( false ); configuration.setRepositoryMerging( ProjectBuildingRequest.RepositoryMerging.REQUEST_DOMINANT ); configuration.setSystemProperties( getSystemProperties() ); configuration.setRepositorySession( legacySupport.getRepositorySession() ); project = getProjectBuilder().build( pomArtifact, configuration ).getProject(); DistributionManagement distMgmt = project.getDistributionManagement(); if ( distMgmt != null ) project.setGroupId( relocation.getGroupId() ); project.setArtifactId( relocation.getArtifactId() );
public MavenProject buildWithDependencies( File pom, ArtifactRepository localRepository, ProfileManager profileManager, TransferListener transferListener ) throws ProjectBuildingException, ArtifactResolutionException, ArtifactNotFoundException { ProjectBuilderConfiguration configuration = new DefaultProjectBuilderConfiguration(); configuration.setLocalRepository( localRepository ); configuration.setGlobalProfileManager( profileManager ); ProjectBuildingRequest request = injectSession( toRequest( configuration ) ); request.setResolveDependencies( true ); try { return projectBuilder.build( pom, request ).getProject(); } catch ( ProjectBuildingException e ) { throw transformError( e ); } }
project.setModel( model ); project.setOriginalModel( result.getRawModel() ); project.setFile( model.getPomFile() ); repositorySystem.injectProxy( projectBuildingRequest.getRepositorySession(), Arrays.asList( repo ) ); repositorySystem.injectAuthentication( projectBuildingRequest.getRepositorySession(), Arrays.asList( repo ) ); project.setReleaseArtifactRepository( repo ); repositorySystem.injectProxy( projectBuildingRequest.getRepositorySession(), Arrays.asList( repo ) ); repositorySystem.injectAuthentication( projectBuildingRequest.getRepositorySession(), Arrays.asList( repo ) ); project.setSnapshotArtifactRepository( repo );
public DefaultProjectBuildingRequest( ProjectBuildingRequest request ) { this(); setProcessPlugins( request.isProcessPlugins() ); setProfiles( request.getProfiles() ); setActiveProfileIds( request.getActiveProfileIds() ); setInactiveProfileIds( request.getInactiveProfileIds() ); setSystemProperties( request.getSystemProperties() ); setUserProperties( request.getUserProperties() ); setRemoteRepositories( request.getRemoteRepositories() ); setPluginArtifactRepositories( request.getPluginArtifactRepositories() ); setRepositorySession( request.getRepositorySession() ); setLocalRepository( request.getLocalRepository() ); setBuildStartTime( request.getBuildStartTime() ); setProject( request.getProject() ); setResolveDependencies( request.isResolveDependencies() ); setValidationLevel( request.getValidationLevel() ); }
InternalConfig( ProjectBuildingRequest request, ReactorModelPool modelPool, ReactorModelCache modelCache ) { this.request = request; this.modelPool = modelPool; this.modelCache = modelCache; session = LegacyLocalRepositoryManager.overlay( request.getLocalRepository(), request.getRepositorySession(), repoSystem ); repositories = RepositoryUtils.toRepos( request.getRemoteRepositories() ); }
@Override public ProjectBuildingRequest getProjectBuildingRequest() { if ( projectBuildingRequest == null ) { projectBuildingRequest = new DefaultProjectBuildingRequest(); projectBuildingRequest.setLocalRepository( getLocalRepository() ); projectBuildingRequest.setSystemProperties( getSystemProperties() ); projectBuildingRequest.setUserProperties( getUserProperties() ); projectBuildingRequest.setRemoteRepositories( getRemoteRepositories() ); projectBuildingRequest.setPluginArtifactRepositories( getPluginArtifactRepositories() ); projectBuildingRequest.setActiveProfileIds( getActiveProfiles() ); projectBuildingRequest.setInactiveProfileIds( getInactiveProfiles() ); projectBuildingRequest.setProfiles( getProfiles() ); projectBuildingRequest.setProcessPlugins( true ); projectBuildingRequest.setBuildStartTime( getStartTime() ); } return projectBuildingRequest; }
tableHeader( tableHeader ); ProjectBuildingRequest buildRequest = new DefaultProjectBuildingRequest( buildingRequest ); buildRequest.setRemoteRepositories( project.getPluginArtifactRepositories() ); MavenProject pluginProject = projectBuilder.build( pluginArtifact, buildingRequest ).getProject(); tableRow( getPluginRow( pluginProject.getGroupId(), pluginProject.getArtifactId(), pluginProject .getVersion(), pluginProject.getUrl() ) );
populateCompileArtifactMap( compileArtifactMap, project.getArtifacts() ); if ( isAggregator() && project.isExecutionRoot() ) reactorArtifacts.add( p.getGroupId() + ':' + p.getArtifactId() ); sb.append( subProject.getVersion() ).append( '\n' ); ProjectBuildingRequest buildingRequest = session.getProjectBuildingRequest(); buildingRequest = buildingRequest.setRemoteRepositories( subProject.getRemoteArtifactRepositories() );
try ProjectBuildingRequest request = new DefaultProjectBuildingRequest(); request.setLocalRepository( artifactRepositoryFactory.createArtifactRepository( "local", new File( "target/localrepo" ).getCanonicalFile().toURL().toExternalForm(), "default", null, null ) ); request.setRepositorySession( MavenRepositorySystemUtils.newSession() ); MavenProject project = projectBuilder.build( pomInfo.getPomFile(), request ).getProject(); Artifact artifact = artifactFactory.createArtifact( project.getGroupId(), project.getArtifactId(), project .getVersion(), null, project.getPackaging() );
@Override public void renderBody() List<String> modules = project.getModel().getModules(); ProjectBuildingRequest buildingRequest = new DefaultProjectBuildingRequest(); buildingRequest.setLocalRepository( localRepository ); File f = new File( project.getBasedir(), module + "/pom.xml" ); if ( f.exists() ) moduleProject = projectBuilder.build( f, buildingRequest ).getProject(); moduleProject = new MavenProject(); moduleProject.setName( module ); moduleProject.setDistributionManagement( new DistributionManagement() );
if ( !( SWC.equals( p.getPackaging() ) || SWF.equals( p.getPackaging() ) || AIR.equals( p.getPackaging() ) ) ) ProjectBuildingRequest request = new DefaultProjectBuildingRequest(); request.setLocalRepository( localRepository ); request.setRemoteRepositories( remoteRepositories ); request.setResolveDependencies( true ); request.setRepositorySession( session.getRepositorySession() ); try p = projectBuilder.build( p.getArtifact(), request ).getProject();
File.createTempFile( "dependency-reduced-pom-", ".xml", project.getBasedir() ); project.getProperties().setProperty( "maven.shade.dependency-reduced-pom", dependencyReducedPomLocation.getAbsolutePath() ); dependencyReducedPomLocation = new File( project.getBasedir(), "dependency-reduced-pom.xml" ); new DefaultProjectBuildingRequest( session.getProjectBuildingRequest() ); projectBuildingRequest.setLocalRepository( localRepository ); projectBuildingRequest.setRemoteRepositories( remoteArtifactRepositories ); ProjectBuildingResult result = projectBuilder.build( f, projectBuildingRequest ); modified = updateExcludesInDeps( result.getProject(), dependencies, transitiveDeps );
org.apache.maven.repository.RepositorySystem lrs = container.lookup(org.apache.maven.repository.RepositorySystem.class); ProjectBuilder projectBuilder = container.lookup(ProjectBuilder.class); ProjectBuildingRequest request = new DefaultProjectBuildingRequest(); request.setSystemProperties(requiredSystemProperties()); request.setRepositorySession(repositorySystemSession); request.setProcessPlugins(false); request.setLocalRepository(lrs.createDefaultLocalRepository()); request.setRemoteRepositories(Arrays.asList(new ArtifactRepository[]{lrs.createDefaultRemoteRepository()}.clone())); ProjectBuildingResult result = projectBuilder.build(pomFile, request); pom = result.getProject(); Artifact rootArtifact = new DefaultArtifact(pom.getArtifact().getGroupId(), pom.getArtifact().getArtifactId(), pom.getArtifact().getClassifier(), pom.getArtifact().getType(), pom.getArtifact().getVersion(),
configuration.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); configuration.setRepositorySession(repositorySession); configuration.setRemoteRepositories(child.getRemoteArtifactRepositories()); File parentFile = child.getParentFile(); if (parentFile != null) { return lookup(ProjectBuilder.class).build(parentFile, configuration).getProject(); Artifact parentArtifact = child.getParentArtifact(); if (parentArtifact != null) { MavenProject parent = lookup(ProjectBuilder.class).build(parentArtifact, configuration).getProject();
ProjectBuildingRequest pbr = oldSession.getProjectBuildingRequest(); pbr.setRemoteRepositories(oldSession.getCurrentProject().getRemoteArtifactRepositories()); pbr.setPluginArtifactRepositories(oldSession.getCurrentProject().getPluginArtifactRepositories()); pbr.getSystemProperties().setProperty("project.basedir", base.getPath()); ProjectBuildingResult result = projectBuilder.build(getStandaloneArtifact(), false, pbr); final List<MavenProject> newReactor = singletonList(result.getProject()); MavenSession newSession = oldSession.clone(); result.getProject().setFile(new DefaultModelLocator().locatePom(base)); result.getProject(), newReactor, newSession);
private MavenProject projectFromArtifact(final Artifact artifact) throws ProjectBuildingException, GemException { final ProjectBuildingRequest request = new DefaultProjectBuildingRequest().setLocalRepository(this.localRepository) .setRemoteRepositories(this.project.getRemoteArtifactRepositories()); manager.setRepositorySession(request, this.repositorySession ); final MavenProject project = this.builder.build(artifact, request) .getProject(); if (project.getDistributionManagement() != null && project.getDistributionManagement().getRelocation() != null) { final Relocation reloc = project.getDistributionManagement() .getRelocation(); final String key = artifact.getGroupId() + ":" + artifact.getArtifactId() + ":" + artifact.getType() + ":" + artifact.getVersion(); artifact.setArtifactId(reloc.getArtifactId()); artifact.setGroupId(reloc.getGroupId()); if (reloc.getVersion() != null) { artifact.setVersion(reloc.getVersion()); } this.relocationMap.put(key, artifact.getGroupId() + ":" + artifact.getArtifactId() + ":" + artifact.getType() + ":" + artifact.getVersion()); return projectFromArtifact(artifact); } else { return project; } }
private MavenProject resolveProject(final Object artifact) throws MojoExecutionException { MavenProject resolvedProject = project; if (includeTransitiveVersionRanges) { resolvedProject = resolvedProjects.get(artifact); if (resolvedProject == null) { final ProjectBuildingRequest request = new DefaultProjectBuildingRequest(); // Fixes KARAF-4626; if the system properties are not transferred to the request, // test-feature-use-version-range-transfer-properties will fail request.setSystemProperties(System.getProperties()); request.setResolveDependencies(true); request.setRemoteRepositories(project.getPluginArtifactRepositories()); request.setLocalRepository(localRepo); request.setProfiles(new ArrayList<>(mavenSession.getRequest().getProfiles())); request.setActiveProfileIds(new ArrayList<>(mavenSession.getRequest().getActiveProfiles())); dependencyHelper.setRepositorySession(request); final Artifact pomArtifact = repoSystem.createArtifact(dependencyHelper.getGroupId(artifact), dependencyHelper.getArtifactId(artifact), dependencyHelper.getBaseVersion(artifact), "pom"); try { resolvedProject = mavenProjectBuilder.build(pomArtifact, request).getProject(); resolvedProjects.put(pomArtifact, resolvedProject); } catch (final ProjectBuildingException e) { throw new MojoExecutionException( format("Maven-project could not be built for artifact %s", pomArtifact), e); } } } return resolvedProject; }
/** * Tries to construct project for the provided artifact * * @param artifact * @return MavenProject for the given artifact * @throws MojoExecutionException */ private MavenProject loadProject( Artifact artifact ) throws MojoExecutionException { try { ProjectBuildingRequest request = new DefaultProjectBuildingRequest(); request.setLocalRepository( localRepository ); request.setRemoteRepositories( remoteRepositories ); request.setResolveDependencies( true ); request.setRepositorySession( session.getRepositorySession() ); return projectBuilder.build( artifact, request ).getProject(); } catch ( ProjectBuildingException ex ) { throw new MojoExecutionException( "Problems building project for: " + artifact.getId(), ex ); } }
org.apache.maven.repository.RepositorySystem lrs = container.lookup(org.apache.maven.repository.RepositorySystem.class); ProjectBuilder projectBuilder = container.lookup(ProjectBuilder.class); ProjectBuildingRequest request = new DefaultProjectBuildingRequest(); request.setRepositorySession(repositorySystemSession); request.setProcessPlugins(false); request.setLocalRepository(lrs.createDefaultLocalRepository()); request.setRemoteRepositories(Arrays.asList(new ArtifactRepository[]{lrs.createDefaultRemoteRepository()}.clone())); ProjectBuildingResult result = projectBuilder.build(pomFile, request); pom = result.getProject(); for (org.apache.maven.model.Dependency dependency : pom.getDependencies()) { Artifact artifact = new DefaultArtifact(dependency.getGroupId(), dependency.getArtifactId(), dependency.getClassifier(), dependency.getType(), dependency.getVersion()); sourceArtifacts.add(artifact);
@Nonnull private MavenProject createProjectFromDependency(@Nonnull Dependency dependency) throws MojoExecutionException { String dependencyKey = dependency.toString(); if (mavenProjectByDependencyCache.containsKey(dependencyKey)) { return mavenProjectByDependencyCache.get(dependencyKey); } getLog().debug("createProjectFromDependency(" + dependency + ")"); Artifact artifactFromDependency = getArtifact(dependency); if (artifactFromDependency == null) { artifactFromDependency = new DefaultArtifact( dependency.getGroupId(), dependency.getArtifactId(), dependency.getVersion(), dependency.getScope(), dependency.getType(), dependency.getClassifier(), artifactHandlerManager.getArtifactHandler(dependency.getType()) ); } ProjectBuildingRequest request = new DefaultProjectBuildingRequest(session.getProjectBuildingRequest()); request.setRemoteRepositories(project.getRemoteArtifactRepositories()); // The artifacts are available repositories defined in the projects - this also covers configured mirrors. request.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); request.setProcessPlugins(false); request.setResolveDependencies(false); try { ProjectBuildingResult result = projectBuilder.build(artifactFromDependency, request); MavenProject project = result.getProject(); mavenProjectByDependencyCache.put(dependencyKey, project); return project; } catch (ProjectBuildingException e) { throw new MojoExecutionException("Could not resolve required dependencies of POM dependency " + artifactFromDependency, e); } }