Example usage for org.apache.maven.execution MavenExecutionRequest getProjectBuildingRequest

List of usage examples for org.apache.maven.execution MavenExecutionRequest getProjectBuildingRequest

Introduction

In this page you can find the example usage for org.apache.maven.execution MavenExecutionRequest getProjectBuildingRequest.

Prototype

ProjectBuildingRequest getProjectBuildingRequest();

Source Link

Usage

From source file:com.puppetlabs.geppetto.forge.maven.plugin.AbstractForgeTestMojo.java

License:Open Source License

@Before
public void setUp() throws Exception {
    pom = new File(ForgeIT.TEST_POM_DIR, "pom.xml");
    Assert.assertNotNull(pom);//from w  w  w .j  ava  2s  . com
    Assert.assertTrue(pom.exists());
    MavenExecutionRequest request = new DefaultMavenExecutionRequest();

    mavenSession = null;
    buildingRequest = request.getProjectBuildingRequest();
    userProps = new Properties();
    userProps.put("testForgeServiceURL", System.getProperty("forge.base.url"));
    FileUtils.rmR(new File(pom.getParent(), "target"));
}

From source file:io.takari.maven.testing.Maven30xRuntime.java

License:Open Source License

protected ProjectBuildingRequest getProjectBuildingRequest(MavenExecutionRequest request)
        throws ComponentLookupException {
    // TODO populate repository system session... if somebody asks for it really nicely
    return request.getProjectBuildingRequest();
}

From source file:org.codehaus.mojo.xml.test.AbstractXmlMojoTestCase.java

License:Apache License

protected AbstractXmlMojo newMojo(String pDir) throws Exception {
    File testPom = new File(new File(getBasedir(), pDir), "pom.xml");

    MavenExecutionRequest executionRequest = new DefaultMavenExecutionRequest();
    ProjectBuildingRequest buildingRequest = executionRequest.getProjectBuildingRequest();
    ProjectBuilder projectBuilder = this.lookup(ProjectBuilder.class);
    MavenProject project = projectBuilder.build(testPom, buildingRequest).getProject();
    //        final Build build = new Build();
    //        build.setDirectory( "target" );
    //        project.setBuild(build);
    project.getBuild().setDirectory("target");
    AbstractXmlMojo vm = (AbstractXmlMojo) lookupConfiguredMojo(project, getGoal());
    setVariableValueToObject(vm, "basedir", new File(getBasedir(), pDir));
    final Log log = new SilentLog();
    DefaultResourceManager rm = new DefaultResourceManager();
    setVariableValueToObject(rm, "logger", log);
    setVariableValueToObject(vm, "locator", rm);
    final Map<String, ResourceLoader> resourceLoaders = new HashMap<String, ResourceLoader>();
    resourceLoaders.put("file", new FileResourceLoader());
    resourceLoaders.put("jar", new JarResourceLoader());
    resourceLoaders.put("classloader", new ThreadContextClasspathResourceLoader());
    URLResourceLoader url = new URLResourceLoader();
    setVariableValueToObject(url, "logger", log);
    resourceLoaders.put("url", url);
    setVariableValueToObject(rm, "resourceLoaders", resourceLoaders);

    //        MavenProjectStub project = new MavenProjectStub()
    //        {//from   w w w .j  a  va2  s  .c  o  m
    //            public Build getBuild()
    //            {
    //                return build;
    //            }
    //        };
    //        setVariableValueToObject( vm, "project", project );
    return vm;
}

From source file:org.echocat.jomon.maven.boot.ArtifactFactory.java

License:Mozilla Public License

@Nonnull
protected MavenProject createProjectFor() throws ProjectBuildingException {
    final MavenExecutionRequest request = _containerAndRequest.getRequest();
    final ProjectBuildingRequest projectBuildingRequest = request.getProjectBuildingRequest();
    projectBuildingRequest.setValidationLevel(VALIDATION_LEVEL_MINIMAL);
    final ProjectBuildingResult build = _projectBuilder.build(createModelSource(), projectBuildingRequest);
    return build.getProject();
}

From source file:org.echocat.jomon.maven.boot.ArtifactFactory.java

License:Mozilla Public License

private MavenExecutionRequest injectDefaults(MavenExecutionRequest request,
        AtomicReference<PlexusContainer> containerReference, AtomicReference<DefaultMaven> oldMaven,
        DefaultMavenExecutionResult executionResult)
        throws ComponentLookupException, MavenExecutionRequestPopulationException {
    final MavenExecutionRequestPopulator populator = containerReference.get()
            .lookup(MavenExecutionRequestPopulator.class);
    final MavenExecutionRequest resultRequest = populator.populateDefaults(request);

    final RepositorySystemSession repositorySystemSession = oldMaven.get().newRepositorySession(resultRequest);
    resultRequest.getProjectBuildingRequest().setRepositorySession(repositorySystemSession);

    final MavenSession session = new MavenSession(containerReference.get(), repositorySystemSession, request,
            executionResult);/*from  www  .j a  v a  2s .  co m*/
    final LegacySupport legacySupport = containerReference.get().lookup(LegacySupport.class);
    legacySupport.setSession(session);
    return resultRequest;
}

From source file:org.echocat.jomon.maven.MavenEnvironmentFactory.java

License:Mozilla Public License

@Nonnull
protected RepositorySystemSession createRepositorySystemSession(@Nonnull DefaultMaven maven,
        @Nonnull MavenExecutionRequest resultRequest) {
    final RepositorySystemSession repositorySystemSession = maven.newRepositorySession(resultRequest);
    resultRequest.getProjectBuildingRequest().setRepositorySession(repositorySystemSession);
    return repositorySystemSession;
}

From source file:org.eclipse.che.maven.server.EffectivePomWriter.java

License:Apache License

public static String getEffectivePom(MavenServerImpl server, final File pom, List<String> activeProfiles,
        List<String> inactiveProfiles) {
    StringWriter stringWriter = new StringWriter();
    try {/*from   w  w w. j  a va 2 s  .  co m*/
        MavenExecutionRequest request = server.newMavenRequest(pom, activeProfiles, inactiveProfiles,
                Collections.emptyList());
        server.runMavenRequest(request, () -> {
            try {
                ProjectBuilder builder = server.getMavenComponent(ProjectBuilder.class);
                ProjectBuildingResult projectBuildingResult = builder.build(new File(pom.getPath()),
                        request.getProjectBuildingRequest());
                MavenProject project = projectBuildingResult.getProject();
                XMLWriter writer = new PrettyPrintXMLWriter(stringWriter, "    ");
                writeHeader(writer);
                writeEffectivePom(project, writer);
            } catch (ProjectBuildingException | MojoExecutionException e) {
                e.printStackTrace();
                throw new RuntimeException(e);
            }
        });

    } catch (Exception e) {
        return null;
    }
    return stringWriter.toString();
}

From source file:org.eclipse.che.maven.server.MavenServerImpl.java

License:Open Source License

private MavenResult internalResolveProject(File pom, List<String> activeProfiles, List<String> inactiveProfiles,
        List<ResolutionListener> dependencyTreeResolutionListeners) {

    MavenExecutionRequest request = newMavenRequest(pom, activeProfiles, inactiveProfiles,
            Collections.emptyList());
    request.setUpdateSnapshots(updateSnapshots);

    AtomicReference<MavenResult> reference = new AtomicReference<>();
    runMavenRequest(request, () -> {// ww  w. ja  v  a 2  s  .c  o m
        try {
            ProjectBuilder builder = getMavenComponent(ProjectBuilder.class);

            List<ProjectBuildingResult> resultList = builder.build(Collections.singletonList(pom), false,
                    request.getProjectBuildingRequest());
            ProjectBuildingResult result = resultList.get(0);
            MavenProject mavenProject = result.getProject();
            RepositorySystemSession repositorySession = getMavenComponent(LegacySupport.class)
                    .getRepositorySession();
            if (repositorySession instanceof DefaultRepositorySystemSession) {
                ((DefaultRepositorySystemSession) repositorySession)
                        .setTransferListener(new ArtifactTransferListener(mavenProgressNotifier));
                if (workspaceCache != null) {
                    ((DefaultRepositorySystemSession) repositorySession)
                            .setWorkspaceReader(new MavenWorkspaceReader(workspaceCache));
                }

            }

            List<Exception> exceptions = new ArrayList<>();

            loadExtensions(mavenProject, exceptions);
            mavenProject.setDependencyArtifacts(
                    mavenProject.createArtifacts(getMavenComponent(ArtifactFactory.class), null, null));

            ArtifactResolutionRequest resolutionRequest = new ArtifactResolutionRequest();
            resolutionRequest.setArtifact(mavenProject.getArtifact());
            resolutionRequest.setRemoteRepositories(mavenProject.getRemoteArtifactRepositories());
            resolutionRequest.setArtifactDependencies(mavenProject.getDependencyArtifacts());
            resolutionRequest.setListeners(dependencyTreeResolutionListeners);
            resolutionRequest.setLocalRepository(localRepo);
            resolutionRequest.setManagedVersionMap(mavenProject.getManagedVersionMap());
            resolutionRequest.setResolveTransitively(true);
            resolutionRequest.setResolveRoot(false);
            ArtifactResolver resolver = getMavenComponent(ArtifactResolver.class);
            ArtifactResolutionResult resolve = resolver.resolve(resolutionRequest);
            mavenProject.setArtifacts(resolve.getArtifacts());
            reference.set(new MavenResult(mavenProject, exceptions));

        } catch (Exception e) {
            reference.set(new MavenResult(null, null, Collections.singletonList(e)));
        }
    });
    return reference.get();
}

From source file:org.eclipse.che.maven.server.MavenServerImpl.java

License:Open Source License

public void runMavenRequest(MavenExecutionRequest request, Runnable runnable) {
    DefaultMaven maven = (DefaultMaven) getMavenComponent(Maven.class);
    RepositorySystemSession repositorySystemSession = maven.newRepositorySession(request);
    request.getProjectBuildingRequest().setRepositorySession(repositorySystemSession);
    MavenSession mavenSession = new MavenSession(container, repositorySystemSession, request,
            new DefaultMavenExecutionResult());
    LegacySupport legacySupport = getMavenComponent(LegacySupport.class);
    MavenSession previousSession = legacySupport.getSession();
    legacySupport.setSession(mavenSession);
    try {/*w w  w .  ja va 2s.  c  o m*/
        for (AbstractMavenLifecycleParticipant participant : getLifecycleParticipants(
                Collections.emptyList())) {
            participant.afterSessionStart(mavenSession);
        }
        runnable.run();
    } catch (MavenExecutionException e) {
        throw new RuntimeException(e);
    } finally {
        legacySupport.setSession(previousSession);
    }
}

From source file:org.eclipse.m2e.core.internal.embedder.MavenImpl.java

License:Open Source License

public MavenProject readProject(final File pomFile, IProgressMonitor monitor) throws CoreException {
    return context().execute(new ICallable<MavenProject>() {
        public MavenProject call(IMavenExecutionContext context, IProgressMonitor monitor)
                throws CoreException {
            MavenExecutionRequest request = DefaultMavenExecutionRequest.copy(context.getExecutionRequest());
            try {
                lookup(MavenExecutionRequestPopulator.class).populateDefaults(request);
                ProjectBuildingRequest configuration = request.getProjectBuildingRequest();
                configuration.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL);
                configuration.setRepositorySession(createRepositorySession(request));
                return lookup(ProjectBuilder.class).build(pomFile, configuration).getProject();
            } catch (ProjectBuildingException ex) {
                throw new CoreException(new Status(IStatus.ERROR, IMavenConstants.PLUGIN_ID, -1,
                        Messages.MavenImpl_error_read_project, ex));
            } catch (MavenExecutionRequestPopulationException ex) {
                throw new CoreException(new Status(IStatus.ERROR, IMavenConstants.PLUGIN_ID, -1,
                        Messages.MavenImpl_error_read_project, ex));
            }/*from  ww  w. j  a va  2  s . c om*/
        }
    }, monitor);
}