Package org.gradle.api.tasks

## Class Exec

- java.lang.Object
- - org.gradle.api.internal.AbstractTask
  - - org.gradle.api.DefaultTask
    - - org.gradle.api.internal.ConventionTask
      - - org.gradle.api.tasks.AbstractExecTask<Exec>
        - - org.gradle.api.tasks.Exec

- All Implemented Interfaces:
    `java.lang.Comparable<Task>`, `org.gradle.api.internal.DynamicObjectAware`, `org.gradle.api.internal.IConventionAware`, `org.gradle.api.internal.TaskInternal`, `Named`, `ExtensionAware`, `Task`, `BaseExecSpec`, `ExecSpec`, `ProcessForkOptions`, `Configurable<Task>`

      @DisableCachingByDefault(because="Gradle would require more information to cache this task")
      public abstract class Exec
      extends AbstractExecTask<Exec>

  Executes a command line process. Example:

       task stopTomcat(type:Exec) {
         workingDir '../tomcat/bin'

         //on windows:
         commandLine 'cmd.exe', '/d', '/c', 'stop.bat'

         //on linux
         commandLine './stop.sh'

         //store the output instead of printing to the console:
         standardOutput = new ByteArrayOutputStream()

         //extension method stopTomcat.output() can be used to obtain the output:
         ext.output = {
           return standardOutput.toString()
         }
       }

- - ### 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_CONSTRUCTOR_ARGS, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Exec()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.util.List<java.lang.String>` | `getArgs()` | Returns the arguments for the command to be executed.
    `java.io.OutputStream` | `getErrorOutput()` | Returns the output stream to consume standard error from the process executing the command.
    `java.io.InputStream` | `getStandardInput()` | Returns the standard input stream for the process executing the command.
    `java.io.OutputStream` | `getStandardOutput()` | Returns the output stream to consume standard output from the process executing the command.
    `boolean` | `isIgnoreExitValue()` | Tells whether a non-zero exit value is ignored, or an exception thrown.
    `Exec` | `setArgs​(java.lang.Iterable<?> arguments)` | Sets the arguments for the command to be executed.
    `Exec` | `setArgs​(java.util.List<java.lang.String> arguments)` | Sets the arguments for the command to be executed.
    `Exec` | `setErrorOutput​(java.io.OutputStream outputStream)` | Sets the output stream to consume standard error from the process executing the command.
    `Exec` | `setIgnoreExitValue​(boolean ignoreExitValue)` | Sets whether a non-zero exit value is ignored, or an exception thrown.
    `Exec` | `setStandardInput​(java.io.InputStream inputStream)` | Sets the standard input stream for the process executing the command.
    `Exec` | `setStandardOutput​(java.io.OutputStream outputStream)` | Sets the output stream to consume standard output from the process executing the command.

    - ### Methods inherited from class org.gradle.api.tasks.AbstractExecTask

      `args, args, commandLine, commandLine, copyTo, environment, environment, exec, executable, getArgumentProviders, getCommandLine, getEnvironment, getExecActionFactory, getExecutable, getExecutionResult, getObjectFactory, getWorkingDir, setCommandLine, setCommandLine, setCommandLine, setEnvironment, setExecutable, setExecutable, setWorkingDir, setWorkingDir, workingDir`

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

      `conventionMapping, conventionMapping, getConventionMapping`

    - ### Methods inherited from class org.gradle.api.DefaultTask

      `compareTo, configure, dependsOn, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExtensions, getFinalizedBy, getGroup, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOutputs, getPath, getProject, getShouldRunAfter, getState, getTaskDependencies, getTemporaryDir, getTimeout, hasProperty, mustRunAfter, onlyIf, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setMustRunAfter, setOnlyIf, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, usesService`

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

      `acceptServiceReferences, appendParallelSafeAction, doNotTrackState, getAsDynamicObject, getConvention, getIdentityPath, getImpliesSubProjects, getLifecycleDependencies, getOnlyIf, getReasonNotToTrackState, getReasonTaskIsIncompatibleWithConfigurationCache, getRequiredServices, getServices, getSharedResources, getStandardOutputCapture, getTaskActions, getTaskIdentity, getTemporaryDirFactory, hasTaskActions, injectIntoNewInstance, isCompatibleWithConfigurationCache, isEnabled, isHasCustomActions, notCompatibleWithConfigurationCache, prependParallelSafeAction, setImpliesSubProjects`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.gradle.api.Task

      `doNotTrackState, getConvention, notCompatibleWithConfigurationCache`

- - ### Constructor Detail

    - #### Exec

          public Exec()

  - ### Method Detail

    - #### getArgs

          @Nullable
          public java.util.List<java.lang.String> getArgs()

      Returns the arguments for the command to be executed. Defaults to an empty list.
      Specified by:
        `getArgs` in interface `ExecSpec`
      Overrides:
        `getArgs` in class `AbstractExecTask<Exec>`

    - #### setArgs

          public Exec setArgs​(java.util.List<java.lang.String> arguments)

      Sets the arguments for the command to be executed.
      Specified by:
        `setArgs` in interface `ExecSpec`
      Overrides:
        `setArgs` in class `AbstractExecTask<Exec>`
      Parameters:
        `arguments` - args for the command
      Returns:
        this

    - #### setArgs

          public Exec setArgs​(@Nullable
                              java.lang.Iterable<?> arguments)

      Sets the arguments for the command to be executed.
      Specified by:
        `setArgs` in interface `ExecSpec`
      Overrides:
        `setArgs` in class `AbstractExecTask<Exec>`
      Parameters:
        `arguments` - args for the command
      Returns:
        this

    - #### isIgnoreExitValue

          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`
      Overrides:
        `isIgnoreExitValue` in class `AbstractExecTask<Exec>`
      Returns:
        whether a non-zero exit value is ignored, or an exception thrown

    - #### setIgnoreExitValue

          public Exec setIgnoreExitValue​(boolean ignoreExitValue)

      Sets whether a non-zero exit value is ignored, or an exception thrown.
      Specified by:
        `setIgnoreExitValue` in interface `BaseExecSpec`
      Overrides:
        `setIgnoreExitValue` in class `AbstractExecTask<Exec>`
      Parameters:
        `ignoreExitValue` - whether a non-zero exit value is ignored, or an exception thrown
      Returns:
        this

    - #### getStandardInput

          public java.io.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`
      Overrides:
        `getStandardInput` in class `AbstractExecTask<Exec>`
      Returns:
        The standard input stream.

    - #### setStandardInput

          public Exec setStandardInput​(java.io.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`
      Overrides:
        `setStandardInput` in class `AbstractExecTask<Exec>`
      Parameters:
        `inputStream` - The standard input stream for the process. Must not be null.
      Returns:
        this

    - #### getStandardOutput

          @Internal
          public java.io.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`
      Overrides:
        `getStandardOutput` in class `AbstractExecTask<Exec>`
      Returns:
        The output stream

    - #### setStandardOutput

          public Exec setStandardOutput​(java.io.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`
      Overrides:
        `setStandardOutput` in class `AbstractExecTask<Exec>`
      Parameters:
        `outputStream` - The standard output stream for the process. Must not be null.
      Returns:
        this

    - #### getErrorOutput

          public java.io.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`
      Overrides:
        `getErrorOutput` in class `AbstractExecTask<Exec>`
      Returns:
        The error output stream.

    - #### setErrorOutput

          public Exec setErrorOutput​(java.io.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`
      Overrides:
        `setErrorOutput` in class `AbstractExecTask<Exec>`
      Parameters:
        `outputStream` - The standard output error stream for the process. Must not be null.
      Returns:
        this