Class AbstractExecTask<T extends AbstractExecTask>

java.lang.Object
org.gradle.api.internal.AbstractTask
org.gradle.api.DefaultTask
org.gradle.api.internal.ConventionTask
org.gradle.api.tasks.AbstractExecTask<T>
Type Parameters:
T - The concrete type of the class.
All Implemented Interfaces:
Comparable<Task>, org.gradle.api.internal.DynamicObjectAware, org.gradle.api.internal.IConventionAware, org.gradle.api.internal.TaskInternal, ExtensionAware, Task, BaseExecSpec, ExecSpec, ProcessForkOptions, org.gradle.util.Configurable<Task>
Direct Known Subclasses:
Exec, RunTestExecutable

public abstract class AbstractExecTask<T extends AbstractExecTask> extends org.gradle.api.internal.ConventionTask implements ExecSpec
AbstractExecTask is the base class for all exec tasks.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.gradle.api.Task

    Task.Namer
  • Field Summary

    Fields inherited from interface org.gradle.api.Task

    TASK_ACTION, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    args(Iterable<?> args)
    Adds arguments for the command to be executed.
    args(Object... args)
    Adds arguments for the command to be executed.
    Sets the full command line, including the executable to be executed plus its arguments.
    commandLine(Object... arguments)
    Sets the full command line, including the executable to be executed plus its arguments.
    Copies these options to the given target options.
    environment(String name, Object value)
    Adds an environment variable to the environment for this process.
    environment(Map<String,?> environmentVariables)
    Adds some environment variables to the environment for this process.
    protected void
     
    executable(Object executable)
    Sets the name of the executable to use.
    Returns the arguments for the command to be executed.
    Returns the full command line, including the executable plus its arguments.
    The environment variables to use for the process.
    Returns the output stream to consume standard error from the process executing the command.
    protected org.gradle.process.internal.ExecActionFactory
     
    Returns the result for the command run by this task.
    Returns the name of the executable to use.
    Returns the standard input stream for the process executing the command.
    Returns the output stream to consume standard output from the process executing the command.
    Returns the working directory for the process.
    boolean
    Tells whether a non-zero exit value is ignored, or an exception thrown.
    setArgs(Iterable<?> arguments)
    Sets the arguments for the command to be executed.
    setArgs(List<String> arguments)
    Sets the arguments for the command to be executed.
    void
    Sets the full command line, including the executable to be executed plus its arguments.
    void
    Sets the full command line, including the executable to be executed plus its arguments.
    void
    Sets the full command line, including the executable to be executed plus its arguments.
    void
    setEnvironment(Map<String,?> environmentVariables)
    Sets the environment variable to use for the process.
    Sets the output stream to consume standard error from the process executing the command.
    void
    setExecutable(Object executable)
    Sets the name of the executable to use.
    void
    setExecutable(String executable)
    Sets the name of the executable to use.
    setIgnoreExitValue(boolean ignoreExitValue)
    Sets whether a non-zero exit value is ignored, or an exception thrown.
    Sets the standard input stream for the process executing the command.
    Sets the output stream to consume standard output from the process executing the command.
    void
    Sets the working directory for the process.
    void
    Sets the working directory for the process.
    Sets the working directory for the process.

    Methods inherited from class org.gradle.api.internal.ConventionTask

    conventionMapping, conventionMapping, getConventionMapping

    Methods inherited from class org.gradle.api.DefaultTask

    newInputDirectory, newInputFile, newOutputDirectory, newOutputFile

    Methods inherited from class org.gradle.api.internal.AbstractTask

    addValidator, appendParallelSafeAction, compareTo, configure, deleteAllActions, dependsOn, dependsOnTaskDidWork, doFirst, doFirst, doFirst, doLast, doLast, doLast, execute, finalizedBy, getActions, getAnt, getAsDynamicObject, getConvention, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExecuter, getExtensions, getFinalizedBy, getGroup, getIdentityPath, getImpliesSubProjects, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOnlyIf, getOutputs, getPath, getProject, getServices, getShouldRunAfter, getStandardOutputCapture, getState, getTaskActions, getTaskDependencies, getTemporaryDir, getTemporaryDirFactory, getValidators, hasProperty, injectIntoNewInstance, isEnabled, isHasCustomActions, leftShift, mustRunAfter, onlyIf, onlyIf, prependParallelSafeAction, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setExecuter, setFinalizedBy, setGroup, setImpliesSubProjects, setMustRunAfter, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, toString

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • AbstractExecTask

      public AbstractExecTask(Class<T> taskType)
  • Method Details

    • getExecActionFactory

      @Inject protected org.gradle.process.internal.ExecActionFactory getExecActionFactory()
    • exec

      protected void exec()
    • commandLine

      public T commandLine(Object... arguments)
      Sets the full command line, including the executable to be executed plus its arguments.
      Specified by:
      commandLine in interface ExecSpec
      Parameters:
      arguments - the command plus the args to be executed
      Returns:
      this
    • commandLine

      public T commandLine(Iterable<?> args)
      Sets the full command line, including the executable to be executed plus its arguments.
      Specified by:
      commandLine in interface ExecSpec
      Parameters:
      args - the command plus the args to be executed
      Returns:
      this
    • args

      public T args(Object... args)
      Adds arguments for the command to be executed.
      Specified by:
      args in interface ExecSpec
      Parameters:
      args - args for the command
      Returns:
      this
    • args

      public T args(Iterable<?> args)
      Adds arguments for the command to be executed.
      Specified by:
      args in interface ExecSpec
      Parameters:
      args - args for the command
      Returns:
      this
    • setArgs

      public T setArgs(List<String> arguments)
      Sets the arguments for the command to be executed.
      Specified by:
      setArgs in interface ExecSpec
      Parameters:
      arguments - args for the command
      Returns:
      this
    • setArgs

      public T setArgs(Iterable<?> arguments)
      Sets the arguments for the command to be executed.
      Specified by:
      setArgs in interface ExecSpec
      Parameters:
      arguments - args for the command
      Returns:
      this
    • getArgs

      @Optional @Input public List<String> getArgs()
      Returns the arguments for the command to be executed. Defaults to an empty list.
      Specified by:
      getArgs in interface ExecSpec
    • getCommandLine

      @Internal public List<String> getCommandLine()
      Returns the full command line, including the executable plus its arguments.
      Specified by:
      getCommandLine in interface BaseExecSpec
      Returns:
      The full command line, including the executable plus its arguments
    • setCommandLine

      public void setCommandLine(List<String> args)
      Sets the full command line, including the executable to be executed plus its arguments.
      Specified by:
      setCommandLine in interface ExecSpec
      Parameters:
      args - the command plus the args to be executed
    • setCommandLine

      public void setCommandLine(Iterable<?> args)
      Sets the full command line, including the executable to be executed plus its arguments.
      Specified by:
      setCommandLine in interface ExecSpec
      Parameters:
      args - the command plus the args to be executed
    • setCommandLine

      public void setCommandLine(Object... args)
      Sets the full command line, including the executable to be executed plus its arguments.
      Specified by:
      setCommandLine in interface ExecSpec
      Parameters:
      args - the command plus the args to be executed
    • getExecutable

      @Optional @Input public String getExecutable()
      Returns the name of the executable to use.
      Specified by:
      getExecutable in interface ProcessForkOptions
      Returns:
      The executable.
    • setExecutable

      public void setExecutable(String executable)
      Sets the name of the executable to use.
      Specified by:
      setExecutable in interface ProcessForkOptions
      Parameters:
      executable - The executable. Must not be null.
    • setExecutable

      public void setExecutable(Object executable)
      Sets the name of the executable to use.
      Specified by:
      setExecutable in interface ProcessForkOptions
      Parameters:
      executable - The executable. Must not be null.
    • executable

      public T executable(Object executable)
      Sets the name of the executable to use.
      Specified by:
      executable in interface ProcessForkOptions
      Parameters:
      executable - The executable. Must not be null.
      Returns:
      this
    • getWorkingDir

      @Internal public File getWorkingDir()
      Returns the working directory for the process. Defaults to the project directory.
      Specified by:
      getWorkingDir in interface ProcessForkOptions
      Returns:
      The working directory. Never returns null.
    • setWorkingDir

      public void setWorkingDir(File dir)
      Sets the working directory for the process.
      Specified by:
      setWorkingDir in interface ProcessForkOptions
      Parameters:
      dir - The working directory. Must not be null.
    • setWorkingDir

      public void setWorkingDir(Object dir)
      Sets the working directory for the process. The supplied argument is evaluated as per Project.file(Object).
      Specified by:
      setWorkingDir in interface ProcessForkOptions
      Parameters:
      dir - The working directory. Must not be null.
    • workingDir

      public T workingDir(Object dir)
      Sets the working directory for the process. The supplied argument is evaluated as per Project.file(Object).
      Specified by:
      workingDir in interface ProcessForkOptions
      Parameters:
      dir - The working directory. Must not be null.
      Returns:
      this
    • getEnvironment

      @Internal public Map<String,Object> getEnvironment()
      The environment variables to use for the process. Defaults to the environment of this process.
      Specified by:
      getEnvironment in interface ProcessForkOptions
      Returns:
      The environment. Returns an empty map when there are no environment variables.
    • setEnvironment

      public void setEnvironment(Map<String,?> environmentVariables)
      Sets the environment variable to use for the process.
      Specified by:
      setEnvironment in interface ProcessForkOptions
      Parameters:
      environmentVariables - The environment variables. Must not be null.
    • environment

      public T environment(String name, Object value)
      Adds an environment variable to the environment for this process.
      Specified by:
      environment in interface ProcessForkOptions
      Parameters:
      name - The name of the variable.
      value - The value for the variable. Must not be null.
      Returns:
      this
    • environment

      public T environment(Map<String,?> environmentVariables)
      Adds some environment variables to the environment for this process.
      Specified by:
      environment in interface ProcessForkOptions
      Parameters:
      environmentVariables - The environment variables. Must not be null.
      Returns:
      this
    • copyTo

      public T copyTo(ProcessForkOptions target)
      Copies these options to the given target options.
      Specified by:
      copyTo in interface ProcessForkOptions
      Parameters:
      target - The target options
      Returns:
      this
    • setStandardInput

      public T setStandardInput(InputStream inputStream)
      Sets the standard input stream for the process executing the command. The stream is closed after the process completes.
      Specified by:
      setStandardInput in interface BaseExecSpec
      Parameters:
      inputStream - The standard input stream for the process. Must not be null.
      Returns:
      this
    • getStandardInput

      @Internal public InputStream getStandardInput()
      Returns the standard input stream for the process executing the command. The stream is closed after the process completes. Defaults to an empty stream.
      Specified by:
      getStandardInput in interface BaseExecSpec
      Returns:
      The standard input stream.
    • setStandardOutput

      public T setStandardOutput(OutputStream outputStream)
      Sets the output stream to consume standard output from the process executing the command. The stream is closed after the process completes.
      Specified by:
      setStandardOutput in interface BaseExecSpec
      Parameters:
      outputStream - The standard output stream for the process. Must not be null.
      Returns:
      this
    • getStandardOutput

      @Internal public OutputStream getStandardOutput()
      Returns the output stream to consume standard output from the process executing the command. Defaults to System.out.
      Specified by:
      getStandardOutput in interface BaseExecSpec
      Returns:
      The output stream
    • setErrorOutput

      public T setErrorOutput(OutputStream outputStream)
      Sets the output stream to consume standard error from the process executing the command. The stream is closed after the process completes.
      Specified by:
      setErrorOutput in interface BaseExecSpec
      Parameters:
      outputStream - The standard output error stream for the process. Must not be null.
      Returns:
      this
    • getErrorOutput

      @Internal public OutputStream getErrorOutput()
      Returns the output stream to consume standard error from the process executing the command. Default to System.err.
      Specified by:
      getErrorOutput in interface BaseExecSpec
      Returns:
      The error output stream.
    • setIgnoreExitValue

      public T setIgnoreExitValue(boolean ignoreExitValue)
      Sets whether a non-zero exit value is ignored, or an exception thrown.
      Specified by:
      setIgnoreExitValue in interface BaseExecSpec
      Parameters:
      ignoreExitValue - whether a non-zero exit value is ignored, or an exception thrown
      Returns:
      this
    • isIgnoreExitValue

      @Input public boolean isIgnoreExitValue()
      Tells whether a non-zero exit value is ignored, or an exception thrown. Defaults to false.
      Specified by:
      isIgnoreExitValue in interface BaseExecSpec
      Returns:
      whether a non-zero exit value is ignored, or an exception thrown
    • getExecResult

      @Internal public ExecResult getExecResult()
      Returns the result for the command run by this task. Returns null if this task has not been executed yet.
      Returns:
      The result. Returns null if this task has not been executed yet.