try { BuildLauncher build = connection.newBuild(); //select tasks to run: build.forTasks("clean", "test"); //include some build arguments: build.withArguments("--no-search-upward", "-i", "--project-dir", "someProjectDir"); //configure the standard input: build.setStandardInput(new ByteArrayInputStream("consume this!".getBytes())); //in case you want the build to use java different than default: build.setJavaHome(new File("/path/to/java")); //if your build needs crazy amounts of memory: build.setJvmArguments("-Xmx2048m", "-XX:MaxPermSize=512m"); //if you want to listen to the progress events: ProgressListener listener = null; // use your implementation build.addProgressListener(listener); //kick the build off: build.run(); } finally { connection.close(); }
public void run(List<WatchTarget> targets) { if (targets == null || targets.isEmpty()) { return; } BuildLauncher launcher = connection .newBuild() .withArguments(arguments) .setStandardOutput(System.out); for (WatchTarget target : targets) { launcher.forTasks(target.getTasks().toArray(new String[0])); } final int[] taskNum = new int[1]; launcher.addProgressListener(new ProgressListener() { public void statusChanged(ProgressEvent event) { if ("Execute tasks".equals(event.getDescription())) { taskNum[0]++; } } }); long timestamp = System.currentTimeMillis(); try { launcher.run(); } catch (BuildException e) { // ignore... } for (WatchTarget target : targets) { target.setExecutedAt(timestamp); } }
public void run(final File projectFolder, final ResultHandler<? super Void> resultHandler, final Consumer<BuildLauncher> configClosure) { final ProjectConnection connector = GradleConnector.newConnector().useGradleVersion(GradleHelper.GRADLE_VERSION).forProjectDirectory(projectFolder).connect(); try { final BuildLauncher build = connector.newBuild(); final ProgressListener _function = (ProgressEvent event) -> { GradleHelper.logger.debug("Gradle build event=\'{}\'", event.getDisplayName()); }; build.addProgressListener(_function, OperationType.values()); configClosure.accept(build); if ((resultHandler != null)) { build.run(resultHandler); } else { build.run(); } } finally { connector.close(); } }
.newBuild() .withArguments("-q") .addProgressListener(new ProgressListener() { public void statusChanged(ProgressEvent event) { out.print("..");
launcher.addProgressListener(new MyProgressListener());