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

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

Introduction

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

Prototype

MavenExecutionRequest addActiveProfiles(List<String> profiles);

Source Link

Usage

From source file:org.eclipse.m2e.core.internal.lifecyclemapping.discovery.LifecycleMappingConfiguration.java

License:Open Source License

/**
 * Calculates lifecycle mapping configuration of the specified projects. Only considers mapping metadata specified in
 * projects' pom.xml files and their parent pom.xml files. Does NOT consider mapping metadata available from installed
 * Eclipse plugins and m2e default lifecycle mapping metadata.
 *//* ww w  . j a v  a  2 s  .  c o  m*/
public static LifecycleMappingConfiguration calculate(final Collection<MavenProjectInfo> projects,
        final ProjectImportConfiguration importConfiguration, final IProgressMonitor monitor) {
    try {
        final IMavenExecutionContext context = MavenPlugin.getMaven().createExecutionContext();
        final MavenExecutionRequest request = context.getExecutionRequest();
        request.addActiveProfiles(importConfiguration.getResolverConfiguration().getActiveProfileList());
        request.addInactiveProfiles(importConfiguration.getResolverConfiguration().getInactiveProfileList());
        return context.execute(new ICallable<LifecycleMappingConfiguration>() {
            public LifecycleMappingConfiguration call(IMavenExecutionContext context,
                    IProgressMonitor monitor) {
                return calculate(projects, monitor);
            }
        }, monitor);
    } catch (CoreException ex) {
        LifecycleMappingConfiguration result = new LifecycleMappingConfiguration();
        for (MavenProjectInfo project : projects) {
            result.addError(project, ex);
        }
        return result;
    }
}

From source file:org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.java

License:Open Source License

MavenExecutionRequest configureExecutionRequest(MavenExecutionRequest request,
        IProjectRegistry state, IFile pom, ResolverConfiguration resolverConfiguration) throws CoreException {
    request.setPom(pom.getLocation().toFile());

    request.addActiveProfiles(resolverConfiguration.getActiveProfileList());
    request.addInactiveProfiles(resolverConfiguration.getInactiveProfileList());

    // eclipse workspace repository implements both workspace dependency resolution
    // and inter-module dependency resolution for multi-module projects.

    request.setLocalRepository(getMaven().getLocalRepository());
    request.setWorkspaceReader(getWorkspaceReader(state, pom, resolverConfiguration));

    return request;
}

From source file:org.maven.ide.eclipse.embedder.Maven2Executor.java

License:Apache License

public static void main(String[] args) {
    // System.err.println("Starting in "+System.getProperty("user.dir"));
    if (args.length < 1) {
        System.err.println("POM file name is missing");
    }/*from  ww w.  j a v  a2s  . c  om*/
    // final long start = System.currentTimeMillis();

    List goals = new ArrayList();
    for (int i = 1; i < args.length; i++) {
        goals.add(args[i]);
    }

    boolean offline = Boolean.getBoolean(Maven2PreferenceConstants.P_OFFLINE);
    boolean debug = Boolean.getBoolean(Maven2PreferenceConstants.P_DEBUG_OUTPUT);
    String globalSettings = System.getProperty(Maven2PreferenceConstants.P_GLOBAL_SETTINGS_FILE);

    MavenEmbedder embedder = null;
    final ConsoleEventMonitor consoleEventMonitor = new ConsoleEventMonitor(debug);
    try {
        embedder = EmbedderFactory.createMavenEmbedder(EmbedderFactory.createExecutionCustomizer(),
                new ConsoleMavenEmbeddedLogger(debug), globalSettings);

        String pomFileName = args[0];
        File pomFile = new File(pomFileName);

        MavenExecutionRequest request = EmbedderFactory.createMavenExecutionRequest(embedder, offline, debug);

        request.setBaseDirectory(pomFile.getParentFile());
        request.setPomFile(pomFile.getAbsolutePath());
        request.setGoals(goals);
        request.setProperties(System.getProperties());

        String profiles = System.getProperty(Maven2LaunchConstants.ATTR_PROFILES);
        if (profiles != null) {
            request.addActiveProfiles(Arrays.asList(profiles.split("[, ]")));
        }

        request.addEventMonitor(consoleEventMonitor);
        request.setTransferListener(new ConsoleTransferMonitor());

        MavenExecutionResult result = embedder.execute(request);
        if (result.hasExceptions()) {
            for (Iterator it = result.getExceptions().iterator(); it.hasNext();) {
                Throwable t = (Throwable) it.next();
                consoleEventMonitor.errorEvent("project-execute", null, System.currentTimeMillis(), t);
            }
        }

    } catch (Throwable e) {
        consoleEventMonitor.errorEvent("project-execute", null, System.currentTimeMillis(), e);
    } finally {
        try {
            if (embedder != null) {
                embedder.stop();
            }
        } catch (MavenEmbedderException e) {
            e.printStackTrace(System.err);
        }
        System.out.flush();
        System.err.flush();
    }

    System.exit(consoleEventMonitor.getErrorCode());
}

From source file:org.maven.ide.eclipse.embedder.MavenModelManager.java

License:Apache License

public MavenExecutionResult readMavenProject(File pomFile, IProgressMonitor monitor, //
        boolean offline, boolean debug, ResolverConfiguration resolverConfiguration, MavenEmbedder embedder) {
    try {/*from w  ww.j  a v  a2  s .  co  m*/
        // monitor.subTask("Reading " + pomFile.getFullPath());
        // File file = pomFile.getLocation().toFile();

        MavenExecutionRequest request = EmbedderFactory.createMavenExecutionRequest(embedder, offline, debug);
        request.setPomFile(pomFile.getAbsolutePath());
        request.setBaseDirectory(pomFile.getParentFile());
        request.setTransferListener(new TransferListenerAdapter(monitor, console, indexManager));
        request.setProfiles(resolverConfiguration.getActiveProfileList());
        request.addActiveProfiles(resolverConfiguration.getActiveProfileList());

        return embedder.readProjectWithDependencies(request);

        // XXX need to manage markers somehow see MNGECLIPSE-***
        // Util.deleteMarkers(pomFile);

        //      if(!result.hasExceptions()) {
        //        return result.getMavenProject();
        //      }
        //      
        //      return result.getMavenProject();

        //    } catch(Exception ex) {
        //      Util.deleteMarkers(this.file);
        //      Util.addMarker(this.file, "Unable to read project; " + ex.toString(), 1, IMarker.SEVERITY_ERROR);
        //      
        //      String msg = "Unable to read " + file.getLocation() + "; " + ex.toString();
        //      console.logError(msg);
        //      Maven2Plugin.log(msg, ex);

    } finally {
        monitor.done();
    }
}