org.apache.maven.shared.invoker.DefaultInvocationRequest Java Examples
The following examples show how to use
org.apache.maven.shared.invoker.DefaultInvocationRequest.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: CreateMojo.java From opoopress with Apache License 2.0 | 6 votes |
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); } }
Example #2
Source File: MavenRun.java From edx-app-android with Apache License 2.0 | 6 votes |
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(); } }
Example #3
Source File: AbstractSundrioMojo.java From sundrio with Apache License 2.0 | 6 votes |
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); } }
Example #4
Source File: HookMethodDefTest.java From sahagin-java with Apache License 2.0 | 6 votes |
private String mavenJreVersion() { InvocationRequest versionRequest = new DefaultInvocationRequest(); if (System.getProperty("sahagin.maven.java.home") != null) { versionRequest.setJavaHome(new File(System.getProperty("sahagin.maven.java.home"))); } versionRequest.setGoals(Arrays.asList("-v")); MavenInvokeResult versionResult = mavenInvoke(versionRequest, "version"); for (String stdOut : versionResult.stdOuts) { String[] entries = stdOut.split(","); for (String entry : entries) { String[] keyValue = entry.split(":"); if (keyValue.length != 2) { continue; } if (keyValue[0].trim().equals("Java version")) { return keyValue[1].trim(); } } } versionResult.printStdOutsAndErrs(); throw new RuntimeException(String.format("fails to get JRE verion")); }
Example #5
Source File: NativeBuildMojo.java From client-maven-plugin with BSD 3-Clause "New" or "Revised" License | 6 votes |
public void execute() throws MojoExecutionException { getLog().debug("Start building"); // prepare the execution: final InvocationRequest invocationRequest = new DefaultInvocationRequest(); invocationRequest.setProfiles(project.getActiveProfiles().stream() .map(Profile::getId) .collect(Collectors.toList())); invocationRequest.setPomFile(new File(pom)); invocationRequest.setGoals(Arrays.asList("client:compile", "client:link")); final Invoker invoker = new DefaultInvoker(); // execute: try { final InvocationResult invocationResult = invoker.execute(invocationRequest); if (invocationResult.getExitCode() != 0) { throw new MojoExecutionException("Error, client:build failed", invocationResult.getExecutionException()); } } catch (MavenInvocationException e) { e.printStackTrace(); throw new MojoExecutionException("Error", e); } }
Example #6
Source File: MavenRunnerFactory.java From app-runner with MIT License | 6 votes |
public static Optional<MavenRunnerFactory> createIfAvailable(Config config) { HomeProvider homeProvider = config.javaHomeProvider(); StringBuffer out = new StringBuffer(); InvocationRequest request = new DefaultInvocationRequest() .setOutputHandler((str) -> out.append(str).append(" - ")) .setErrorHandler((str) -> out.append(str).append(" - ")) .setShowVersion(true) .setGoals(Collections.singletonList("--version")) .setBaseDirectory(new File(".")); try { MavenRunner.runRequest(request, homeProvider); String versionInfo = StringUtils.removeEndIgnoreCase(out.toString(), " - "); return Optional.of(new MavenRunnerFactory(homeProvider, versionInfo)); } catch (Exception e) { return Optional.empty(); } }
Example #7
Source File: ProjectGenerator.java From fabric8-forge with Apache License 2.0 | 6 votes |
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); } }
Example #8
Source File: ProjectGenerator.java From fabric8-forge with Apache License 2.0 | 6 votes |
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); }
Example #9
Source File: MavenDependencyResolver.java From carnotzet with Apache License 2.0 | 6 votes |
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); } }
Example #10
Source File: TestPackager.java From justtestlah with Apache License 2.0 | 6 votes |
/** * Creates a test package for AWS Devicefarm. * * @param logger {@link InvokerLogger} logger to be used for the Maven build output * @param clean true, if the target directory should be cleaned (forcing recompilation) * @return {@link File} of the ZIP package to be used by AWS Devicefarm * @throws MavenInvocationException error during Maven build */ protected File packageProjectForDeviceFarm(InvocationOutputHandler logger, boolean clean) throws MavenInvocationException { InvocationRequest request = new DefaultInvocationRequest(); request.setPomFile( new File(properties.getProperty("aws.demo.path") + File.separator + "pom.xml")); request.setProfiles(List.of("aws")); if (clean) { request.setGoals(List.of("clean", "package")); } else { request.setGoals(List.of("package")); } request.setUpdateSnapshots(true); new DefaultInvoker().setOutputHandler(logger).execute(request); return new File( properties.getProperty("aws.demo.path") + File.separator + "target" + File.separator + properties.getProperty("aws.testpackage.name") + ".zip"); }
Example #11
Source File: ExecuteUtil.java From quarkus with Apache License 2.0 | 6 votes |
public static void executeMaven(File projectDirectory, CommandInvocation invocation, String buildTarget) { String mvnPath = findExecutable("mvn"); System.setProperty("maven.home", mvnPath); InvocationRequest request = new DefaultInvocationRequest(); request.setPomFile(new File(projectDirectory.getAbsolutePath() + File.separatorChar + "pom.xml")); request.setGoals(Collections.singletonList(buildTarget)); Invoker invoker = new DefaultInvoker(); InvocationResult result = null; try { result = invoker.execute(request); } catch (MavenInvocationException e) { invocation.println("Failed during invocation: " + e.getMessage()); } if (result.getExitCode() != 0) { invocation.println("Build failed."); } }
Example #12
Source File: AddExtensionIT.java From quarkus with Apache License 2.0 | 6 votes |
private void addExtension(boolean plural, String ext) throws MavenInvocationException, FileNotFoundException, UnsupportedEncodingException { InvocationRequest request = new DefaultInvocationRequest(); request.setBatchMode(true); request.setGoals(Collections.singletonList( getPluginGroupId() + ":" + getPluginArtifactId() + ":" + getPluginVersion() + ":add-extension")); Properties properties = new Properties(); properties.setProperty("platformGroupId", "io.quarkus"); properties.setProperty("platformArtifactId", "quarkus-bom"); properties.setProperty("platformVersion", getPluginVersion()); if (plural) { properties.setProperty("extensions", ext); } else { properties.setProperty("extension", ext); } request.setProperties(properties); getEnv().forEach(request::addShellEnvironment); File log = new File(testDir, "build-add-extension-" + testDir.getName() + ".log"); PrintStreamLogger logger = new PrintStreamLogger(new PrintStream(new FileOutputStream(log), false, "UTF-8"), InvokerLogger.DEBUG); invoker.setLogger(logger); invoker.execute(request); }
Example #13
Source File: ListExtensionsIT.java From quarkus with Apache License 2.0 | 6 votes |
private List<String> listExtensions() throws MavenInvocationException, IOException { InvocationRequest request = new DefaultInvocationRequest(); request.setBatchMode(true); request.setGoals(Collections.singletonList( getPluginGroupId() + ":" + getPluginArtifactId() + ":" + getPluginVersion() + ":list-extensions")); getEnv().forEach(request::addShellEnvironment); File outputLog = new File(testDir, "output.log"); InvocationOutputHandler outputHandler = new PrintStreamHandler( new PrintStream(new TeeOutputStream(System.out, Files.newOutputStream(outputLog.toPath())), true, "UTF-8"), true); invoker.setOutputHandler(outputHandler); File invokerLog = new File(testDir, "invoker.log"); PrintStreamLogger logger = new PrintStreamLogger(new PrintStream(new FileOutputStream(invokerLog), false, "UTF-8"), InvokerLogger.DEBUG); invoker.setLogger(logger); invoker.execute(request); return Files.readAllLines(outputLog.toPath()); }
Example #14
Source File: GenerateConfigIT.java From quarkus with Apache License 2.0 | 6 votes |
private void generateConfig(String filename) throws MavenInvocationException, FileNotFoundException, UnsupportedEncodingException { InvocationRequest request = new DefaultInvocationRequest(); request.setBatchMode(true); request.setGoals(Collections .singletonList(getPluginGroupId() + ":" + getPluginArtifactId() + ":" + getPluginVersion() + ":generate-config")); Properties properties = new Properties(); properties.setProperty("file", filename); request.setProperties(properties); getEnv().forEach(request::addShellEnvironment); File log = new File(testDir, "build-generate-config-" + testDir.getName() + ".log"); PrintStreamLogger logger = new PrintStreamLogger(new PrintStream(new FileOutputStream(log), false, "UTF-8"), InvokerLogger.DEBUG); invoker.setLogger(logger); invoker.execute(request); }
Example #15
Source File: CreateProjectMojoIT.java From quarkus with Apache License 2.0 | 6 votes |
private InvocationResult setup(Properties params) throws MavenInvocationException, FileNotFoundException, UnsupportedEncodingException { params.setProperty("platformGroupId", ToolsConstants.IO_QUARKUS); params.setProperty("platformArtifactId", "quarkus-bom"); params.setProperty("platformVersion", getPluginVersion()); InvocationRequest request = new DefaultInvocationRequest(); request.setBatchMode(true); request.setGoals(Collections.singletonList( getPluginGroupId() + ":" + getPluginArtifactId() + ":" + getPluginVersion() + ":create")); request.setDebug(false); request.setShowErrors(false); request.setProperties(params); getEnv().forEach(request::addShellEnvironment); File log = new File(testDir, "build-create-" + testDir.getName() + ".log"); PrintStreamLogger logger = new PrintStreamLogger(new PrintStream(new FileOutputStream(log), false, "UTF-8"), InvokerLogger.DEBUG); invoker.setLogger(logger); return invoker.execute(request); }
Example #16
Source File: Builder.java From wad with MIT License | 6 votes |
public Builder() { this.invoker = new DefaultInvoker(); this.invoker.setLogger(new SilentLogger()); this.invoker.setOutputHandler((line) -> { }); List<String> goals = Arrays.asList("clean", "package"); Properties properties = new Properties(); properties.put("maven.test.skip", String.valueOf(true)); this.request = new DefaultInvocationRequest(); this.request.setPomFile(new File("./pom.xml")); this.request.setGoals(goals); this.request.setBatchMode(true); this.request.setProperties(properties); this.request.setThreads(System.getProperty("threads", "1")); this.request.setShowErrors(true); }
Example #17
Source File: MavenJarResolver.java From beakerx with Apache License 2.0 | 5 votes |
private InvocationRequest createInvocationRequest(File finalPom) { InvocationRequest request = new DefaultInvocationRequest(); request.setGoals(singletonList(GOAL)); request.setOffline(commandParams.getOffline()); request.setPomFile(finalPom); request.setUpdateSnapshots(true); return request; }
Example #18
Source File: MavenDependencyScanner.java From sonarqube-licensecheck with Apache License 2.0 | 5 votes |
private static Stream<Dependency> readDependencyList(File moduleDir, MavenSettings settings) { Path tempFile = createTempFile(); if (tempFile == null) { return Stream.empty(); } InvocationRequest request = new DefaultInvocationRequest(); request.setRecursive(false); request.setPomFile(new File(moduleDir, "pom.xml")); request.setGoals(Collections.singletonList("dependency:list")); if (settings.userSettings != null) { request.setUserSettingsFile(new File(settings.userSettings)); LOGGER.info("Using user settings {}", settings.userSettings); } if (settings.globalSettings != null) { request.setGlobalSettingsFile(new File(settings.globalSettings)); LOGGER.info("Using global settings {}", settings.globalSettings); } Properties properties = new Properties(); properties.setProperty("outputFile", tempFile.toAbsolutePath().toString()); properties.setProperty("outputAbsoluteArtifactFilename", "true"); properties.setProperty("includeScope", "runtime"); // only runtime (scope compile + runtime) if (System.getProperty(MAVEN_REPO_LOCAL) != null) { properties.setProperty(MAVEN_REPO_LOCAL, System.getProperty(MAVEN_REPO_LOCAL)); } request.setProperties(properties); return invokeMaven(request, tempFile); }
Example #19
Source File: AbstractBuildMojo.java From opoopress with Apache License 2.0 | 5 votes |
private void invokeGoals( String goals, File projectBasedir) throws MavenInvocationException { getLog().info( "[" + projectBasedir +"] Invoking goals: " + goals ); InvocationRequest request = new DefaultInvocationRequest() .setBaseDirectory(projectBasedir) .setGoals(Arrays.asList(StringUtils.split(goals, ","))); invoker.execute( request ); }
Example #20
Source File: ArchetypeTest.java From ipaas-quickstarts with Apache License 2.0 | 5 votes |
protected static int invokeMaven(String[] args, String outDir, File logFile) { List<String> goals = Arrays.asList(args); String commandLine = Strings.join(goals, " "); InvocationResult result = null; try { File dir = new File(outDir); InvocationRequest request = new DefaultInvocationRequest(); request.setGoals(goals); InvocationOutputHandler outputHandler = new SystemOutAndFileHandler(logFile); outputHandler.consumeLine(""); outputHandler.consumeLine(""); outputHandler.consumeLine(dir.getName() + " : starting: mvn " + commandLine); outputHandler.consumeLine(""); request.setOutputHandler(outputHandler); request.setErrorHandler(outputHandler); DefaultInvoker invoker = new DefaultInvoker(); request.setPomFile(new File(dir, "pom.xml")); result = invoker.execute(request); CommandLineException executionException = result.getExecutionException(); if (executionException != null) { LOG.error("Failed to invoke maven with: mvn " + commandLine + ". " + executionException, executionException); } } catch (Exception e) { LOG.error("Failed to invoke maven with: mvn " + commandLine + ". " + e, e); } return result == null ? 1 : result.getExitCode(); }
Example #21
Source File: HookMethodDefTest.java From sahagin-java with Apache License 2.0 | 5 votes |
private Pair<MavenInvokeResult, JavaConfig> invokeChildTest( String subDirName, String additionalProfile) throws IOException { // set up working directory clearWorkDir(subDirName); File workDir = mkWorkDir(subDirName).getAbsoluteFile(); JavaConfig conf = new JavaConfig(workDir); conf.setTestDir(new File(workDir, "src/test/java")); conf.setRunTestOnly(true); YamlUtils.dump(conf.toYamlObject(), new File(workDir, "sahagin.yml")); FileUtils.copyFile(new File("pom.xml"), new File(workDir, "pom.xml")); FileUtils.copyDirectory(testResourceDir(subDirName + "/src"), new File(workDir, "src")); FileUtils.copyDirectory(testResourceDir("expected/captures"), new File(workDir, "captures")); // execute test InvocationRequest testRequest = new DefaultInvocationRequest(); if (System.getProperty("sahagin.maven.java.home") != null) { testRequest.setJavaHome(new File(System.getProperty("sahagin.maven.java.home"))); } testRequest.setGoals(Arrays.asList("clean", "test")); if (additionalProfile == null) { testRequest.setProfiles(Arrays.asList("sahagin-jar-test")); } else { testRequest.setProfiles(Arrays.asList("sahagin-jar-test", additionalProfile)); } String jarPathOpt = "-Dsahagin.temp.jar=" + new File("target/sahagin-temp.jar").getAbsolutePath(); testRequest.setMavenOpts(jarPathOpt); testRequest.setBaseDirectory(workDir); MavenInvokeResult testResult = mavenInvoke(testRequest, subDirName + ":test"); return Pair.of(testResult, conf); }
Example #22
Source File: HookMethodDefTest.java From sahagin-java with Apache License 2.0 | 5 votes |
private void generateTempJar(String subDirName) { // generate sahagin temp jar for test from the already generated class files InvocationRequest jarGenRequest = new DefaultInvocationRequest(); if (System.getProperty("sahagin.maven.java.home") != null) { jarGenRequest.setJavaHome(new File(System.getProperty("sahagin.maven.java.home"))); } jarGenRequest.setProfiles(Arrays.asList("sahagin-temp-jar-gen")); jarGenRequest.setGoals(Arrays.asList("jar:jar")); MavenInvokeResult jarGenResult = mavenInvoke(jarGenRequest, subDirName + ":jarGen"); if (!jarGenResult.succeeded) { jarGenResult.printStdOutsAndErrs(); fail("fail to generate jar"); } }
Example #23
Source File: MavenExecutorImpl.java From developer-studio with Apache License 2.0 | 5 votes |
public boolean executeMavenGoal(File projectPath, List<String> goals, boolean isOffline) { InvocationRequest request = new DefaultInvocationRequest(); if (!projectPath.exists()) { projectPath.mkdirs(); } request.setPomFile(new File(projectPath, POM_XML)); if (goals == null) { goals = getDefaultMavenGoals(); } request.setGoals(goals); Invoker invoker = new DefaultInvoker(); request.setOffline(isOffline); try { InvocationResult result = invoker.execute(request); if (result.getExecutionException() == null) { if (result.getExitCode() != 0) { request.setOffline(!isOffline); result = invoker.execute(request); if (result.getExitCode() == 0) { return true; } else { final String errorMessage = "No maven Project found at " + projectPath; log.error(errorMessage); throw new MavenInvocationException(errorMessage); } } return true; } } catch (MavenInvocationException e) { log.error("Maven invocation failed", e); } return false; }
Example #24
Source File: AbstractSchemaGeneratorMojoTest.java From jpa-schema-maven-plugin with Apache License 2.0 | 5 votes |
protected void compileJpaModelSources(File pomfile) throws MavenInvocationException { Properties properties = new Properties(); properties.setProperty("plugin.version", System.getProperty("plugin.version")); InvocationRequest request = new DefaultInvocationRequest(); request.setPomFile(pomfile); request.setGoals(Collections.singletonList("compile")); request.setProperties(properties); Invoker invoker = new DefaultInvoker(); invoker.execute(request); }
Example #25
Source File: LibertySettingsDirectoryTest.java From ci.maven with Apache License 2.0 | 5 votes |
@Test public void testLibertyConfigDirInvalidDir() throws Exception { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); File pomFilePath = new File("../pom.xml"); Document pomFile = builder.parse(pomFilePath); pomFile.getDocumentElement().normalize(); XPathFactory xpathFactory = XPathFactory.newInstance(); XPath xpath = xpathFactory.newXPath(); String pomVersion = xpath.evaluate("/project/build/plugins/plugin[artifactId='liberty-maven-plugin']/version", pomFile); Properties props = new Properties(); props.put("pluginVersion", pomVersion); InvocationRequest request = new DefaultInvocationRequest() .setPomFile( new File("../src/test/resources/invalidDirPom.xml")) .setGoals( Collections.singletonList("package")) .setProperties(props); InvocationOutputHandler outputHandler = new InvocationOutputHandler(){ @Override public void consumeLine(String line) throws IOException { if (line.contains("<libertySettingsFolder> must be a directory")) { throw new IOException("Caught expected MojoExecutionException - " + line); } } }; Invoker invoker = new DefaultInvoker(); invoker.setOutputHandler(outputHandler); InvocationResult result = invoker.execute( request ); assertTrue("Exited successfully, expected non-zero exit code.", result.getExitCode() != 0); assertNotNull("Expected MojoExecutionException to be thrown.", result.getExecutionException()); }
Example #26
Source File: MSF4JDeployerTest.java From msf4j with Apache License 2.0 | 5 votes |
/** * compile the sample project in the given filepath. * @param projectFile sample project pom file location * @throws MavenInvocationException */ private void compileTestSamples(File projectFile) throws MavenInvocationException { InvocationRequest request = new DefaultInvocationRequest(); request.setPomFile(projectFile); request.setGoals(Collections.singletonList("install")); Invoker invoker = new DefaultInvoker(); String mavenLocalRepo = System.getProperty("maven.repo.local"); if (mavenLocalRepo != null && !mavenLocalRepo.isEmpty()) { invoker.setLocalRepositoryDirectory(new File(mavenLocalRepo)); } invoker.execute(request); }
Example #27
Source File: RunnableMavenInvoker.java From repairnator with MIT License | 5 votes |
@Override public void run() { InvocationRequest request = new DefaultInvocationRequest(); request.setPomFile(new File(this.mavenHelper.getPomFile())); request.setGoals(Arrays.asList(this.mavenHelper.getGoal())); Properties props = this.mavenHelper.getProperties(); if (System.getenv("M2_HOME") == null) { // sensible value // https://stackoverflow.com/questions/14793015/programmatically-launch-m2e-maven-command String mavenHome = RepairnatorConfig.getInstance().getMavenHome(); System.out.println("M2_HOME not found, using provided input value instead - " + mavenHome); System.setProperty("maven.home", mavenHome); } else if ( System.getProperty("maven.home") == null ) { System.setProperty("maven.home", System.getenv("M2_HOME")); } request.setProperties(props); request.setBatchMode(true); request.setShowErrors(true); Invoker invoker = new DefaultInvoker(); if (this.mavenHelper.getErrorHandler() != null) { invoker.setErrorHandler(this.mavenHelper.getErrorHandler()); } invoker.setOutputHandler(this.mavenHelper.getOutputHandler()); try { InvocationResult result = invoker.execute(request); this.exitCode = result.getExitCode(); } catch (MavenInvocationException e) { this.logger.error("Error while executing goal " + this.mavenHelper.getGoal() + " on the following pom file: " + this.mavenHelper.getPomFile() + ". Properties: " + this.mavenHelper.getProperties()); this.logger.error(e.getMessage()); this.mavenHelper.getInspector().getJobStatus().addStepError(this.mavenHelper.getName(), e.getMessage()); this.exitCode = MavenHelper.MAVEN_ERROR; } }
Example #28
Source File: RunningInvoker.java From quarkus with Apache License 2.0 | 5 votes |
public MavenProcessInvocationResult execute(List<String> goals, Map<String, String> envVars, Properties properties) throws MavenInvocationException { DefaultInvocationRequest request = new DefaultInvocationRequest(); request.setGoals(goals); request.setDebug(debug); request.setLocalRepositoryDirectory(getLocalRepositoryDirectory()); request.setBaseDirectory(getWorkingDirectory()); request.setPomFile(new File(getWorkingDirectory(), "pom.xml")); request.setProperties(properties); if (System.getProperty("mavenOpts") != null) { request.setMavenOpts(System.getProperty("mavenOpts")); } else { //we need to limit the memory consumption, as we can have a lot of these processes //running at once, if they add default to 75% of total mem we can easily run out //of physical memory as they will consume way more than what they need instead of //just running GC request.setMavenOpts("-Xmx128m"); } request.setShellEnvironmentInherited(true); envVars.forEach(request::addShellEnvironment); request.setOutputHandler(outStreamHandler); request.setErrorHandler(errStreamHandler); this.result = (MavenProcessInvocationResult) execute(request); return result; }
Example #29
Source File: EndpointsGetClientLib.java From appengine-maven-plugin with Apache License 2.0 | 4 votes |
@Override public void execute() throws MojoExecutionException, MojoFailureException { getLog().info(""); getLog().info("Google App Engine Java SDK - Generate endpoints get client lib"); List<String> classNames = getAPIServicesClasses(); if (classNames.isEmpty()) { getLog().info("No Endpoints classes detected."); return; } try { executeEndpointsCommand("get-client-lib", new String[0], classNames.toArray(new String[classNames.size()])); File webInf = new File(outputDirectory + "/WEB-INF"); if (webInf.exists() && webInf.isDirectory()) { File[] files = webInf.listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { return name.endsWith("-java.zip"); } }); File mavenProjectsDir = new File(clientLibsDirectory); mavenProjectsDir.mkdirs(); for (File source : files) { File pomFile = unjarMavenProject(source, mavenProjectsDir); if (pomFile != null) { getLog().info("BUILDING Endpoints Client Library from: " + pomFile); InvocationRequest request = new DefaultInvocationRequest(); request.setPomFile(pomFile); request.setGoals(Collections.singletonList("install")); Invoker invoker = new DefaultInvoker(); InvocationResult result = invoker.execute(request); if (result.getExitCode() != 0) { throw new IllegalStateException("Build failed."); } getLog().info("Endpoint get client lib generation and compilation done."); } } } } catch (MojoExecutionException e) { getLog().error(e); throw new MojoExecutionException( "Error while generating Google App Engine endpoint get client lib", e); } catch (MavenInvocationException ex) { Logger.getLogger(EndpointsGetClientLib.class.getName()).log(Level.SEVERE, null, ex); } }
Example #30
Source File: EndpointsGetClientLib.java From gcloud-maven-plugin with Apache License 2.0 | 4 votes |
@Override public void execute() throws MojoExecutionException, MojoFailureException { getLog().info(""); getLog().info("Google App Engine Java SDK - Generate endpoints get client lib"); List<String> classNames = getAPIServicesClasses(); if (classNames.isEmpty()) { getLog().info("No Endpoints classes detected."); return; } try { executeEndpointsCommand("get-client-lib", new String[0], classNames.toArray(new String[classNames.size()])); File webInf = new File(output_directory + "/WEB-INF"); if (webInf.exists() && webInf.isDirectory()) { File[] files = webInf.listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { return name.endsWith("-java.zip"); } }); File mavenProjectsDir = new File(client_libs_directory); mavenProjectsDir.mkdirs(); for (File source : files) { File pomFile = unjarMavenProject(source, mavenProjectsDir); if (pomFile != null) { getLog().info("BUILDING Endpoints Client Library from: " + pomFile); InvocationRequest request = new DefaultInvocationRequest(); request.setPomFile(pomFile); request.setGoals(Collections.singletonList("install")); Invoker invoker = new DefaultInvoker(); InvocationResult result = invoker.execute(request); if (result.getExitCode() != 0) { throw new IllegalStateException("Build failed."); } getLog().info("Endpoint get client lib generation and compilation done."); } } } } catch (MojoExecutionException e) { getLog().error(e); throw new MojoExecutionException( "Error while generating Google App Engine endpoint get client lib", e); } catch (MavenInvocationException ex) { Logger.getLogger(EndpointsGetClientLib.class.getName()).log(Level.SEVERE, null, ex); } }