T
- the ConfigurableLauncher implementation to return as part of the fluent API.LongRunningOperation
BuildActionExecuter<T>
, BuildLauncher
, ModelBuilder<T>
, TestLauncher
public interface ConfigurableLauncher<T extends ConfigurableLauncher> extends LongRunningOperation
ConfigurableLauncher
allows you to configure a long running operation.Modifier and Type | Method | Description |
---|---|---|
T |
addArguments(Iterable<String> arguments) |
Appends new command line arguments to the existing list.
|
T |
addArguments(String... arguments) |
Appends new command line arguments to the existing list.
|
T |
addJvmArguments(Iterable<String> jvmArguments) |
Appends Java VM arguments to the existing list.
|
T |
addJvmArguments(String... jvmArguments) |
Appends Java VM arguments to the existing list.
|
T |
addProgressListener(ProgressListener listener) |
Adds a progress listener which will receive progress events of all types as the operation runs.
|
T |
addProgressListener(ProgressListener listener,
Set<OperationType> eventTypes) |
Adds a progress listener which will receive progress events as the operations of the requested type run.
|
T |
addProgressListener(ProgressListener listener,
OperationType... operationTypes) |
Adds a progress listener which will receive progress events as the operations of the requested type run.
|
T |
addProgressListener(ProgressListener listener) |
Adds a progress listener which will receive progress events as the operation runs.
|
T |
setColorOutput(boolean colorOutput) |
Specifies whether to generate colored (ANSI encoded) output for logging.
|
T |
setEnvironmentVariables(Map<String,String> envVariables) |
Specifies the environment variables to use for this operation.
|
T |
setJavaHome(File javaHome) |
Specifies the Java home directory to use for this operation.
|
T |
setJvmArguments(Iterable<String> jvmArguments) |
Specifies the Java VM arguments to use for this operation.
|
T |
setJvmArguments(String... jvmArguments) |
Specifies the Java VM arguments to use for this operation.
|
T |
setStandardError(OutputStream outputStream) |
Sets the
OutputStream which should receive standard error logging generated while running the operation. |
T |
setStandardInput(InputStream inputStream) |
Sets the
InputStream that will be used as standard input for this operation. |
T |
setStandardOutput(OutputStream outputStream) |
Sets the
OutputStream which should receive standard output logging generated while running the operation. |
T |
withArguments(Iterable<String> arguments) |
Specify the command line build arguments.
|
T |
withArguments(String... arguments) |
Specify the command line build arguments.
|
T |
withCancellationToken(CancellationToken cancellationToken) |
Sets the cancellation token to use to cancel the operation if required.
|
T withArguments(String... arguments)
BuildLauncher
.
Be aware that not all of the Gradle command line options are supported!
Only the build arguments that configure the build execution are supported.
They are modelled in the Gradle API via StartParameter
.
Examples of supported build arguments: '--info', '-p'.
The command line instructions that are actually separate commands (like '-?' and '-v') are not supported.
Some other instructions like '--daemon' are also not supported - the tooling API always runs with the daemon.
If an unknown or unsupported command line option is specified, UnsupportedBuildArgumentException
will be thrown at the time the operation is executed via BuildLauncher.run()
or ModelBuilder.get()
.
For the list of all Gradle command line options please refer to the User Manual
or take a look at the output of the 'gradle -?' command. Majority of arguments modeled by
StartParameter
are supported.
The arguments can potentially override some other settings you have configured.
For example, the project directory or Gradle user home directory that are configured
in the GradleConnector
.
Also, the task names configured by BuildLauncher.forTasks(String...)
can be overridden
if you happen to specify other tasks via the build arguments.
See the example in the docs for BuildLauncher
If not configured, null, or an empty array is passed, then the reasonable default will be used.
Requires Gradle 1.0 or later.
withArguments
in interface LongRunningOperation
arguments
- Gradle command line argumentsT withArguments(Iterable<String> arguments)
BuildLauncher
.
If not configured, null, or an empty list is passed, then the reasonable default will be used.
Requires Gradle 1.0 or later.
withArguments
in interface LongRunningOperation
arguments
- Gradle command line arguments@Incubating T addArguments(String... arguments)
BuildLauncher
.addArguments
in interface LongRunningOperation
arguments
- Gradle command line arguments@Incubating T addArguments(Iterable<String> arguments)
BuildLauncher
.addArguments
in interface LongRunningOperation
arguments
- Gradle command line argumentsT setStandardOutput(OutputStream outputStream)
OutputStream
which should receive standard output logging generated while running the operation.
The default is to discard the output.setStandardOutput
in interface LongRunningOperation
outputStream
- The output stream. The system default character encoding will be used to encode characters written to this stream.T setStandardError(OutputStream outputStream)
OutputStream
which should receive standard error logging generated while running the operation.
The default is to discard the output.setStandardError
in interface LongRunningOperation
outputStream
- The output stream. The system default character encoding will be used to encode characters written to this stream.T setColorOutput(boolean colorOutput)
Supported by Gradle 2.3 or later. Ignored for older versions.
setColorOutput
in interface LongRunningOperation
colorOutput
- true
to request color output (using ANSI encoding).T setStandardInput(InputStream inputStream)
InputStream
that will be used as standard input for this operation.
Defaults to an empty input stream.setStandardInput
in interface LongRunningOperation
inputStream
- The input streamT setJavaHome(File javaHome)
BuildEnvironment
model contains information such as Java or Gradle environment.
If you want to get hold of this information you can ask tooling API to build this model.
If not configured or null is passed, then the sensible default will be used.
setJavaHome
in interface LongRunningOperation
javaHome
- to use for the Gradle processT setJvmArguments(String... jvmArguments)
BuildEnvironment
model contains information such as Java or Gradle environment.
If you want to get hold of this information you can ask tooling API to build this model.
If not configured, null, or an empty array is passed, then the reasonable default will be used.
setJvmArguments
in interface LongRunningOperation
jvmArguments
- to use for the Gradle processT setJvmArguments(Iterable<String> jvmArguments)
BuildEnvironment
model contains information such as Java or Gradle environment.
If you want to get hold of this information you can ask tooling API to build this model.
If not configured, null, or an empty list is passed, then the reasonable default will be used.
setJvmArguments
in interface LongRunningOperation
jvmArguments
- to use for the Gradle process@Incubating T addJvmArguments(String... jvmArguments)
addJvmArguments
in interface LongRunningOperation
jvmArguments
- the argument to use for the Gradle process@Incubating T addJvmArguments(Iterable<String> jvmArguments)
addJvmArguments
in interface LongRunningOperation
jvmArguments
- the argument to use for the Gradle processT setEnvironmentVariables(Map<String,String> envVariables)
BuildEnvironment
model contains information such as Java or Gradle environment.
If you want to get hold of this information you can ask tooling API to build this model.
If not configured or null is passed, then the reasonable default will be used.
setEnvironmentVariables
in interface LongRunningOperation
envVariables
- environment variablesT addProgressListener(ProgressListener listener)
This method is intended to be replaced by LongRunningOperation.addProgressListener(org.gradle.tooling.events.ProgressListener)
. The new progress listener type
provides much richer information and much better handling of parallel operations that run during the build, such as tasks that run in parallel.
You should prefer using the new listener interface where possible. Note, however, that the new interface is supported only for Gradle 2.5.
addProgressListener
in interface LongRunningOperation
listener
- The listenerT addProgressListener(ProgressListener listener)
This method is intended to replace LongRunningOperation.addProgressListener(ProgressListener)
. You should prefer using the new progress listener method where possible,
as the new interface provides much richer information and much better handling of parallel operations that run during the build.
Supported by Gradle 2.5 or later. Gradle 2.4 supports OperationType.TEST
operations only. Ignored for older versions.
addProgressListener
in interface LongRunningOperation
listener
- The listenerT addProgressListener(ProgressListener listener, Set<OperationType> eventTypes)
This method is intended to replace LongRunningOperation.addProgressListener(ProgressListener)
. You should prefer using the new progress listener method where possible,
as the new interface provides much richer information and much better handling of parallel operations that run during the build.
Supported by Gradle 2.5 or later. Gradle 2.4 supports OperationType.TEST
operations only. Ignored for older versions.
addProgressListener
in interface LongRunningOperation
listener
- The listenereventTypes
- The types of operations to receive progress events for.T addProgressListener(ProgressListener listener, OperationType... operationTypes)
This method is intended to replace LongRunningOperation.addProgressListener(ProgressListener)
. You should prefer using the new progress listener method where possible,
as the new interface provides much richer information and much better handling of parallel operations that run during the build.
Supported by Gradle 2.5 or later. Gradle 2.4 supports OperationType.TEST
operations only. Ignored for older versions.
addProgressListener
in interface LongRunningOperation
listener
- The listeneroperationTypes
- The types of operations to receive progress events for.T withCancellationToken(CancellationToken cancellationToken)
Supported by Gradle 2.1 or later. Ignored for older versions.
withCancellationToken
in interface LongRunningOperation