本文整理汇总了Java中org.apache.maven.shared.invoker.MavenInvocationException类的典型用法代码示例。如果您正苦于以下问题:Java MavenInvocationException类的具体用法?Java MavenInvocationException怎么用?Java MavenInvocationException使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
MavenInvocationException类属于org.apache.maven.shared.invoker包,在下文中一共展示了MavenInvocationException类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: execute
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
/**
* Run the build, push, and generate dockerrun.aws.json file goals sequentially.
* @throws MojoExecutionException if execution fails.
*/
public void execute() throws MojoExecutionException {
final Properties properties = initializePropertiesForGoals();
final List<String> goals = Arrays.asList(
"magic-beanstalk:build",
"magic-beanstalk:push",
"magic-beanstalk:genCustomDockerrun",
"magic-beanstalk:zip");
final InvocationRequest invocationRequest = createInvocationRequestWithGoals(goals, properties);
final Invoker invoker = new DefaultInvoker();
setupInvokerLogger(invoker);
try {
final InvocationResult invocationResult = invoker.execute(invocationRequest);
if (invocationResult.getExitCode() != 0) {
String msg = "Invocation Exception";
if (invocationResult.getExecutionException() != null) {
msg = invocationResult.getExecutionException().getMessage();
}
throw new CommandLineException(msg);
}
} catch (MavenInvocationException | CommandLineException e) {
throw new MojoExecutionException("Failed to execute goals", e);
}
}
示例2: executeMavenBuild
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
private void executeMavenBuild(List<String> goals, InvocationOutputHandler outputHandler) {
log.debug("Invoking maven with goals {}", goals);
InvocationRequest request = new DefaultInvocationRequest();
request.setBatchMode(true);
request.setGoals(goals);
// reset MAVEN_DEBUG_OPTS to allow debugging without blocking the invoker calls
request.addShellEnvironment("MAVEN_DEBUG_OPTS", "");
InvocationOutputHandler outHandler = outputHandler;
if (outHandler == null) {
outHandler = log::debug;
}
request.setOutputHandler(outHandler);
try {
InvocationResult result = maven.execute(request);
if (result.getExitCode() != 0) {
throw new MavenInvocationException("Maven process exited with non-zero code [" + result.getExitCode() + "]. "
+ "Retry with debug log level enabled to see the maven invocation logs");
}
}
catch (MavenInvocationException e) {
throw new CarnotzetDefinitionException("Error invoking mvn " + goals, e);
}
}
示例3: getArtifactJar
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
public File getArtifactJar(String groupId, String artifactId, String version) {
Properties properties = new Properties();
properties.put("groupId", groupId);
properties.put("artifactId", artifactId);
properties.put("version", version);
InvocationRequest request = new DefaultInvocationRequest();
request.setLocalRepositoryDirectory(localMavenRepo);
request.setInteractive(false);
List<String> goalList = Arrays.asList("org.apache.maven.plugins:maven-dependency-plugin:2.10:get");
request.setGoals(goalList);
request.setProperties(properties);
try {
Invoker invoker = new DefaultInvoker();
InvocationResult result = invoker.execute(request);
int exitCode = result.getExitCode();
LOG.info("maven result " + exitCode + " exception: " + result.getExecutionException());
assertEquals("Failed to invoke maven goals: " + goalList + " with properties: " + properties + ". Exit Code: ", 0, exitCode);
} catch (MavenInvocationException e) {
fail("Failed to invoke maven goals: " + goalList + " with properties: " + properties + ". Exception " + e, e);
}
String path = groupId.replace('.', '/') + "/" + artifactId + "/" + version + "/" + artifactId + "-" + version + ".jar";
return new File(localMavenRepo, path);
}
示例4: runMavenGoals
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
protected void runMavenGoals(File outputDir, String... goals) throws MavenInvocationException {
List<String> goalList = Arrays.asList(goals);
LOG.info("Invoking maven with goals: " + goalList + " in folder: " + outputDir);
File pomFile = new File(outputDir, "pom.xml");
InvocationRequest request = new DefaultInvocationRequest();
request.setLocalRepositoryDirectory(localMavenRepo);
request.setInteractive(false);
request.setPomFile(pomFile);
request.setGoals(goalList);
// lets use a dummy service name to avoid it being too long
request.setMavenOpts("-Dfabric8.service.name=dummy-name");
Invoker invoker = new DefaultInvoker();
InvocationResult result = invoker.execute(request);
int exitCode = result.getExitCode();
LOG.info("maven result " + exitCode + " exception: " + result.getExecutionException());
if (exitCode != 0) {
LOG.error("Failed to invoke maven goals: " + goalList + " in folder: " + outputDir + ". Exit Code: " + exitCode);
failedFolders.add(outputDir);
}
}
示例5: execute
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
@Override
public void execute(ExecutionContext context) throws MojoExecutionException, MojoFailureException {
this.log.info("Starting release build.");
try {
InvocationRequest request = setupInvocationRequest();
Invoker invoker = setupInvoker();
InvocationResult result = invoker.execute(request);
if (result.getExitCode() != 0) {
CommandLineException executionException = result.getExecutionException();
if (executionException != null) {
throw new MojoFailureException("Error during project build: " + executionException.getMessage(),
executionException);
} else {
throw new MojoFailureException("Error during project build: " + result.getExitCode());
}
}
} catch (MavenInvocationException e) {
throw new MojoFailureException(e.getMessage(), e);
}
}
示例6: invokeMaven
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
private void invokeMaven(File pomFile, String goal) throws CommandLineException, MavenInvocationException
{
InvocationRequest request = new DefaultInvocationRequest();
request.setPomFile(pomFile);
request.setGoals(Collections.singletonList(goal));
request.setJavaHome(javaHome);
request.setShowErrors(true);
Invoker invoker = new DefaultInvoker();
invoker.setMavenHome(mavenHome);
InvocationResult result = invoker.execute(request);
// check status
CommandLineException executionException = result.getExecutionException();
if (executionException != null)
{
throw executionException;
}
assertEquals(0, result.getExitCode());
}
示例7: generate
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
public String generate() throws MavenInvocationException, IOException {
InvocationRequest request = new DefaultInvocationRequest();
Path pomPath = Files.createTempFile("pom", ".xml");
Files.copy(getClass().getClassLoader().getResourceAsStream(POM_PATH),
pomPath, StandardCopyOption.REPLACE_EXISTING);
request.setPomFile(pomPath.toFile());
request.setProperties(config.asJaxb2Properties());
request.setGoals(Arrays.asList("clean", "generate-sources"));
InvocationResult result = new DefaultInvoker().execute(request);
if(result.getExitCode() != 0) {
LOG.info("Xmlgen failed: {}", result.getExecutionException());
}
pomPath.toFile().delete();
return capitalize(sanitize(XmlPath.from(new File(config.getInputPath()))
.getNode("schema").getNode("element").getAttribute("name"))) + "Type";
}
示例8: install
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
private void install(Pom pom, GitDependency dependency) throws MojoExecutionException {
final GitDependencyHandler dependencyHandler = new GitDependencyHandler(dependency);
final String version = dependencyHandler.getDependencyVersion(pom);
final String tempDirectory = Directory.getTempDirectoryString(dependency.getLocation(), version);
final InvocationRequest request = new DefaultInvocationRequest();
final Invoker invoker = new DefaultInvoker();
request.setPomFile(new File(tempDirectory + "/pom.xml"));
request.setGoals(Collections.singletonList("install"));
try {
final InvocationResult result = invoker.execute(request);
final int exitCode = result.getExitCode();
if (exitCode != 0) {
throw new MojoExecutionException(String.format("Build failed with exit code %d.", exitCode));
}
} catch (MavenInvocationException ex) {
throw new MojoExecutionException(String.format("Invocation of install goal failed on '%s'.",
request.getPomFileName()), ex);
}
}
示例9: execute
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
public void execute(Project project, CommandLine arguments) {
DefaultInvocationRequest request = new DefaultInvocationRequest();
request.setJavaHome(os.getJavaHome());
request.setShellEnvironmentInherited(true);
request.setBaseDirectory(workspace.getProjectDirectory(project));
logger.log(project, "Executing mvn %s", arguments.toString());
request.setGoals(arguments.toCommandLine(it -> properties.getFullyQualifiedPlugin(it.getGoal())));
try {
InvocationResult result = invoker.execute(request);
if (result.getExitCode() != 0) {
throw new RuntimeException(result.getExecutionException());
}
} catch (MavenInvocationException o_O) {
throw new RuntimeException(o_O);
}
}
示例10: backGroundBuild
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
void backGroundBuild(MavenProject project) throws MojoExecutionException {
MavenExecutionRequest executionRequest = session.getRequest();
InvocationRequest request = new DefaultInvocationRequest();
request.setBaseDirectory(project.getBasedir());
request.setPomFile(project.getFile());
request.setGoals(executionRequest.getGoals());
request.setRecursive(false);
request.setInteractive(false);
request.setProfiles(executionRequest.getActiveProfiles());
request.setProperties(executionRequest.getUserProperties());
Invoker invoker = new DefaultInvoker();
try {
InvocationResult result = invoker.execute(request);
if (result.getExitCode() != 0) {
throw new IllegalStateException("Error invoking Maven goals:[" + StringUtils.join(executionRequest.getGoals(), ", ") + "]", result.getExecutionException());
}
} catch (MavenInvocationException e) {
throw new IllegalStateException("Error invoking Maven goals:[" + StringUtils.join(executionRequest.getGoals(), ", ") + "]", e);
}
}
示例11: install
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
private void install(POM pom, GitDependency dependency) {
final GitDependencyHandler dependencyHandler = new GitDependencyHandler(dependency);
final String version = dependencyHandler.getDependencyVersion(pom);
final String tempDirectory = Directory.getTempDirectoryString(dependency.getLocation(), version);
final InvocationRequest request = new DefaultInvocationRequest();
final Invoker invoker = new DefaultInvoker();
request.setPomFile(new File(tempDirectory + "/pom.xml"));
request.setGoals(Collections.singletonList("install"));
try {
final InvocationResult result = invoker.execute(request);
if (result.getExitCode() != 0) {
throw new IllegalStateException("Build failed.");
}
} catch (MavenInvocationException ex) {
getLog().debug(ex);
}
}
示例12: main
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
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();
}
}
示例13: invoke
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
private InvocationResult invoke(final InvocationRequest request, final String path) {
InvocationResult result = null;
final Invoker invoker = new DefaultInvoker();
try {
invoker.setLogger(new PrintStreamLogger(
new PrintStream(InstallLog.getInstance().getFileAbsolutePath()), 1000));
invoker.setOutputHandler(new PrintStreamHandler(
new PrintStream(InstallLog.getInstance().getFileAbsolutePath()), true));
invoker.setWorkingDirectory(new File(path));
result = invoker.execute(request);
} catch (MavenInvocationException | FileNotFoundException ex) {
final String messageError = "Maven exception: " + ex.getMessage();
handler.emitError(messageError, messageError);
InstallLog.getInstance().info(messageError);
}
return result;
}
示例14: invokePostArchetypeGenerationGoals
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
private void invokePostArchetypeGenerationGoals(String goals, String artifactId, Properties properties)
throws MojoExecutionException, MojoFailureException {
getLog().info("Invoking post-archetype-generation goals: " + goals);
File projectBasedir = new File(basedir, artifactId);
if (projectBasedir.exists()) {
InvocationRequest request = new DefaultInvocationRequest()
.setBaseDirectory(projectBasedir)
.setGoals(Arrays.asList(StringUtils.split(goals, ",")));
if(properties != null){
request.setProperties(properties);
}
try {
invoker.execute(request);
} catch (MavenInvocationException e) {
throw new MojoExecutionException("Cannot run additions goals.", e);
}
} else {
getLog().info("Additional goals aborted: unavailable basedir " + projectBasedir);
}
}
示例15: execute
import org.apache.maven.shared.invoker.MavenInvocationException; //导入依赖的package包/类
public static void execute(File dir, List<String> commands, Properties props, boolean logToStdOut) throws MavenInvocationException {
InvocationRequest request = new DefaultInvocationRequest();
request.setBaseDirectory(dir);
request.setGoals(commands);
if (props!=null) {
request.setProperties(props);
}
Invoker invoker = new DefaultInvoker();
invoker.setMavenHome(mavenHome);
if (!logToStdOut) {
request.setOutputHandler(emptyHandler);
}
invoker.execute(request);
}