Example usage for org.apache.maven.execution DefaultMavenExecutionRequest setInteractiveMode

List of usage examples for org.apache.maven.execution DefaultMavenExecutionRequest setInteractiveMode

Introduction

In this page you can find the example usage for org.apache.maven.execution DefaultMavenExecutionRequest setInteractiveMode.

Prototype

@Override
    public MavenExecutionRequest setInteractiveMode(boolean interactive) 

Source Link

Usage

From source file:com.bluexml.side.util.dependencies.MavenUtil.java

License:Open Source License

public MavenExecutionResult doMavenGoal(File baseDir, List<String> goals, Map<String, String> parameters,
        List<String> profiles, Boolean offline) throws Exception {
    System.out.println(baseDir.getAbsolutePath());
    DefaultMavenExecutionRequest archetypeCreateRequest = new DefaultMavenExecutionRequest();
    archetypeCreateRequest.setBaseDirectory(baseDir);
    archetypeCreateRequest.setGoals(goals);
    archetypeCreateRequest.setInteractiveMode(false);
    archetypeCreateRequest.setProperty("basedir", baseDir.getAbsolutePath().toString());

    // set active profile
    if (profiles != null && !profiles.isEmpty()) {
        archetypeCreateRequest.addActiveProfiles(profiles);
    }//from   w ww .j  a  v a2 s  .  c  om
    // set offline
    if (offline != null) {
        archetypeCreateRequest.setOffline(offline);
    }
    if (parameters != null) {
        // manage additional parameters
        for (Map.Entry<String, String> param : parameters.entrySet()) {
            archetypeCreateRequest.setProperty(param.getKey(), param.getValue());
        }
    }
    MavenEmbedder embedder = getEmbedder();
    archetypeCreateRequest.setUpdateSnapshots(true);

    //System.out.println("Active profiles :"+archetypeCreateRequest.getActiveProfiles());
    if (archetypeCreateRequest.getActiveProfiles().size() == 0) {
        throw new Exception("No active profile found report this bug to SIDE developers team");
    }

    MavenExecutionResult result = embedder.execute(archetypeCreateRequest);
    return result;
}