package org.edx.main;
import java.io.File;
import java.io.IOException;
import java.util.Collections;
import java.util.Properties;
import org.apache.maven.shared.invoker.DefaultInvocationRequest;
import org.apache.maven.shared.invoker.DefaultInvoker;
import org.apache.maven.shared.invoker.InvocationRequest;
import org.apache.maven.shared.invoker.Invoker;
import org.apache.maven.shared.invoker.MavenInvocationException;
/**
* This file is required if user wants jar executable
*/
public class MavenRun {
public static void main(String[] args) throws IOException {
InvocationRequest request = new DefaultInvocationRequest();
request.setPomFile(new File("pom.xml"));
if (args.length > 0) {
if (args[0] != null && args[1] != null) {
Properties projectProperties = new Properties();
projectProperties.setProperty("deviceOS", args[0]);
projectProperties.setProperty("appPath", args[1]);
projectProperties.setProperty("osVersion", args[2]);
projectProperties.setProperty("deviceName", args[3]);
projectProperties.setProperty("udid", args[4]);
request.setProperties(projectProperties);
}
}
request.setGoals(Collections.singletonList("test"));
Invoker invoker = new DefaultInvoker();
invoker.setMavenHome(new File(System.getenv("M2_HOME")));
try {
invoker.execute(request);
} catch (MavenInvocationException e) {
e.printStackTrace();
}
}
}