/** * Specifies a POM file the EmbeddedMaven should be used for. * <p> * This method offers you to use a Resolver EmbeddedMaven API for additional easy setting of Maven Invoker that * is internally used. * </p> * <p> * If you prefer more powerful approach that is less comfortable and more boilerplate, then use the method * {@link #withMavenInvokerSet(InvocationRequest, Invoker)} * </p> * * @param pomFile POM file the EmbeddedMaven should be used for * @return Set EmbeddedMaven instance */ public static PomEquippedEmbeddedMaven forProject(File pomFile) { PomUnequippedEmbeddedMaven embeddedMaven = Resolvers.use(PomUnequippedEmbeddedMaven.class); return embeddedMaven.setPom(pomFile); }
public void build() { final ConfigurationDistributionStage distributionStage = EmbeddedMaven .forProject(pom.toFile()) .setQuiet(quietMode) .useDefaultDistribution() .setDebug(mvnDebugOutput) .setDebugLoggerLevel() .setGoals(goals) .addProperty("fabric8.namespace", namespace); "No JAVA_HOME defined. Defaulting to /usr/lib/jvm/java-1.8.0. If that's not where it should be, " + "please define JAVA_HOME environment variable and re-run this test. See https://git.io/vxWo9 for reasons."); distributionStage.addShellEnvironment("JAVA_HOME", "/usr/lib/jvm/java-1.8.0"); distributionStage.setProfiles(profiles); distributionStage.setProperties(asProperties(properties)); distributionStage.setMavenOpts(mavenOpts); final BuiltProject builtProject = distributionStage.ignoreFailure() .build();
private Archive<?> runBuild(MavenBuild conf) { final ConfigurationDistributionStage configurationDistributionStage = EmbeddedMaven.forProject(conf.pom()) .useMaven3Version(conf.version()) .setGoals(conf.goals()) .setProfiles(conf.profiles()) .setOffline(conf.offline()) .skipTests(true); configurationDistributionStage.setQuiet(conf.quiet()); configurationDistributionStage.setLocalRepositoryDirectory(new File(conf.localRepositoryDirectory())); configurationDistributionStage.setMavenOpts(conf.mvnOpts()); configurationDistributionStage.addProperty(properties[i], properties[i + 1]); .ignoreFailure() .build();
builder = builder.setQuiet(quiet); PrintStream silentPrintStream = new PrintStream(new OutputStream() { public void write(int b) { builder = builder.setLogger(new PrintStreamLogger(silentPrintStream, InvokerLogger.DEBUG)); } else { if (log != null) { builder.setLogger(invokerLogger); builder.setInputStream(new NullInputStream(0)); builder = builder.setUserSettingsFile(userSettingsFile); builder = builder.setGlobalSettingsFile(globalSettingsFile); builder = builder.setLocalRepositoryDirectory(localRepositoryDirectory); builder = builder.setDebug(debug); builder = builder.setGoals(goals); builder = builder.setProfiles(profiles); builder = builder.setProperties(properties); builder = (ConfigurationDistributionStage) builder.useMaven3Version(mavenVersion); } finally { System.setErr(oldSystemErr); builder = (ConfigurationDistributionStage) builder.ignoreFailure();
result = builder.build(); } finally { System.setErr(oldSystemErr);
public void build() { final ConfigurationDistributionStage distributionStage = EmbeddedMaven .forProject(pom.toFile()) .setQuiet(quietMode) .useDefaultDistribution() .setDebug(mvnDebugOutput) .setDebugLoggerLevel() .setGoals(goals) .addProperty("fabric8.namespace", namespace); "No JAVA_HOME defined. Defaulting to /usr/lib/jvm/java-1.8.0. If that's not where it should be, " + "please define JAVA_HOME environment variable and re-run this test. See https://git.io/vxWo9 for reasons."); distributionStage.addShellEnvironment("JAVA_HOME", "/usr/lib/jvm/java-1.8.0"); distributionStage.setProfiles(profiles); distributionStage.setProperties(asProperties(properties)); distributionStage.setMavenOpts(mavenOpts); final BuiltProject builtProject = distributionStage.ignoreFailure() .build();
/** * Specifies a POM file the EmbeddedMaven should be used for. * <p> * This method offers you to use a Resolver EmbeddedMaven API for additional easy setting of Maven Invoker that * is internally used. * </p> * <p> * If you prefer more powerful approach that is less comfortable and more boilerplate, then use the method * {@link #withMavenInvokerSet(InvocationRequest, Invoker)} * </p> * * @param pomFile POM file the EmbeddedMaven should be used for * @return Set EmbeddedMaven instance */ public static PomEquippedEmbeddedMaven forProject(File pomFile) { PomUnequippedEmbeddedMaven embeddedMaven = Resolvers.use(PomUnequippedEmbeddedMaven.class); return embeddedMaven.setPom(pomFile); }