public static void executeMaven(final File pom, final Properties properties, final String... goals) { executeMaven(pom, System.out, System.err, properties, goals); }
public MavenProject build(final Project project, final List<String> goals, final Properties properties) throws BuildException { final File pom = new File(project.getTempDir(), "pom.xml"); executeMaven(pom, properties, goals.toArray(new String[]{})); return MavenProjectLoader.parseMavenPom(pom); } }
true); new Thread(() -> executeMaven(pom, out, err,
public boolean deploy(List<Binary> binaries) throws Exception { URL nexusContentURL = getNexusContentURL(true); if (nexusContentURL == null) { return false; } String origCustomSettingsProp = System.getProperty(CUSTOM_SETTINGS_PROPERTY); try { System.setProperty(CUSTOM_SETTINGS_PROPERTY, generateSettingsXml()); MavenSettings.reinitSettings(); for (Binary binary : binaries) { MavenBinary mavenBinary = (MavenBinary)binary; File pom = new File(mavenBinary.getProject().getTempDir(), "pom.xml"); Properties props = new Properties(); boolean isSnapshot = mavenBinary.getVersion().endsWith("SNAPSHOT"); String nexusRepoUrl = nexusContentURL + "repositories/" + (isSnapshot ? "snapshots/" : "releases/"); props.setProperty("altDeploymentRepository", "nexus::default::" + nexusRepoUrl); MavenBuildExecutor.executeMaven(pom, props, new String[]{"deploy"}); } } finally { if (origCustomSettingsProp != null) { System.setProperty(CUSTOM_SETTINGS_PROPERTY, origCustomSettingsProp); } else { System.clearProperty(CUSTOM_SETTINGS_PROPERTY); } MavenSettings.reinitSettings(); } return true; }
public boolean deploy(List<Binary> binaries) throws Exception { URL nexusContentURL = getNexusContentURL(true); if (nexusContentURL == null) { return false; } String origCustomSettingsProp = System.getProperty(CUSTOM_SETTINGS_PROPERTY); try { System.setProperty(CUSTOM_SETTINGS_PROPERTY, generateSettingsXml()); MavenSettings.reinitSettings(); for (Binary binary : binaries) { MavenBinary mavenBinary = (MavenBinary)binary; File pom = new File(mavenBinary.getProject().getTempDir(), "pom.xml"); Properties props = new Properties(); boolean isSnapshot = mavenBinary.getVersion().endsWith("SNAPSHOT"); String nexusRepoUrl = nexusContentURL + "repositories/" + (isSnapshot ? "snapshots/" : "releases/"); props.setProperty("altDeploymentRepository", "nexus::default::" + nexusRepoUrl); MavenBuildExecutor.executeMaven(pom, props, new String[]{"deploy"}); } } finally { if (origCustomSettingsProp != null) { System.setProperty(CUSTOM_SETTINGS_PROPERTY, origCustomSettingsProp); } else { System.clearProperty(CUSTOM_SETTINGS_PROPERTY); } MavenSettings.reinitSettings(); } return true; }
private void buildMavenProject(Source source, PrintStream out, PrintStream err) throws org.uberfire.java.nio.IOException, SecurityException, UnsupportedOperationException, IllegalArgumentException { List<String> goals = new ArrayList<>(); goals.add("package"); Properties p = new Properties(); p.setProperty("failIfNoTests", "false"); final InputStream pomStream = org.uberfire.java.nio.file.Files.newInputStream(source.getPath().resolve("pom.xml")); MavenProject project = MavenProjectLoader.parseMavenPom(pomStream); final String expectedBinary = project.getArtifact().getArtifactId() + "-" + project.getArtifact().getVersion() + "." + project.getArtifact().getType(); final org.guvnor.ala.build.maven.model.MavenProject mavenProject = new MavenProjectImpl(project.getId(), project.getArtifact().getType(), project.getName(), expectedBinary, source.getPath(), source.getPath(), source.getPath().resolve("target").resolve(expectedBinary).toAbsolutePath(), null, null); final File pom = new File(getRepositoryVisitor(mavenProject).getRoot(), "pom.xml"); MavenBuildExecutor.executeMaven(pom, out, err, p, goals.toArray(new String[0])); }
private void buildMavenProject(Source source, PrintStream out, PrintStream err) throws org.uberfire.java.nio.IOException, InvalidPathException, SecurityException, UnsupportedOperationException, IllegalArgumentException { List<String> goals = new ArrayList<>(); goals.add("package"); Properties p = new Properties(); p.setProperty("failIfNoTests", "false"); final InputStream pomStream = org.uberfire.java.nio.file.Files.newInputStream(source.getPath().resolve("drools-webapp-example").resolve("pom.xml")); MavenProject project = MavenProjectLoader.parseMavenPom(pomStream); final String expectedBinary = project.getArtifact().getArtifactId() + "-" + project.getArtifact().getVersion() + "." + project.getArtifact().getType(); final org.guvnor.ala.build.maven.model.MavenProject mavenProject = new MavenProjectImpl(project.getId(), project.getArtifact().getType(), project.getName(), expectedBinary, source.getPath(), source.getPath().resolve("drools-webapp-example"), source.getPath().resolve("target").resolve(expectedBinary).toAbsolutePath(), null, null); final File pom = new File(getRepositoryVisitor(mavenProject).getRoot(), "pom.xml"); MavenBuildExecutor.executeMaven(pom, out, err, p, goals.toArray(new String[0])); }
MavenBuildExecutor.executeMaven(pom, properties, goals.toArray(new String[0]));