JavaExecSpec (Gradle API 4.7)
Date: 2018-04-18

org.gradle.process

## Interface JavaExecSpec

- All Superinterfaces:
    BaseExecSpec, JavaForkOptions, ProcessForkOptions
  All Known Implementing Classes:
    JavaExec, RhinoShellExec

      public interface JavaExecSpec
      extends JavaForkOptions, BaseExecSpec

  Specifies the options for executing a Java application.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `JavaExecSpec` | `args(Iterable<?> args)` Adds args for the main class to be executed.
    `JavaExecSpec` | `args(Object... args)` Adds args for the main class to be executed.
    `JavaExecSpec` | `classpath(Object... paths)` Adds elements to the classpath for executing the main class.
    `List<String>` | `getArgs()` Returns the arguments passed to the main class to be executed.
    `List<CommandLineArgumentProvider>` | `getArgumentProviders()` Argument providers for the application.
    `FileCollection` | `getClasspath()` Returns the classpath for executing the main class.
    `String` | `getMain()` Returns the fully qualified name of the Main class to be executed.
    `JavaExecSpec` | `setArgs(Iterable<?> args)` Sets the args for the main class to be executed.
    `JavaExecSpec` | `setArgs(List<String> args)` Sets the args for the main class to be executed.
    `JavaExecSpec` | `setClasspath(FileCollection classpath)` Sets the classpath for executing the main class.
    `JavaExecSpec` | `setMain(String main)` Sets the fully qualified name of the main class to be executed.

    - ### Methods inherited from interface org.gradle.process.JavaForkOptions

      `bootstrapClasspath, copyTo, getAllJvmArgs, getBootstrapClasspath, getDebug, getDefaultCharacterEncoding, getEnableAssertions, getJvmArgs, getJvmArgumentProviders, getMaxHeapSize, getMinHeapSize, getSystemProperties, jvmArgs, jvmArgs, setAllJvmArgs, setAllJvmArgs, setBootstrapClasspath, setDebug, setDefaultCharacterEncoding, setEnableAssertions, setJvmArgs, setJvmArgs, setMaxHeapSize, setMinHeapSize, setSystemProperties, systemProperties, systemProperty`

    - ### Methods inherited from interface org.gradle.process.BaseExecSpec

      `getCommandLine, getErrorOutput, getStandardInput, getStandardOutput, isIgnoreExitValue, setErrorOutput, setIgnoreExitValue, setStandardInput, setStandardOutput`

    - ### Methods inherited from interface org.gradle.process.ProcessForkOptions

      `copyTo, environment, environment, executable, getEnvironment, getExecutable, getWorkingDir, setEnvironment, setExecutable, setExecutable, setWorkingDir, setWorkingDir, workingDir`

- - ### Method Detail

    - #### getMain

          @Nullable
           @Optional
           @Input
          String getMain()

      Returns the fully qualified name of the Main class to be executed.

    - #### setMain

          JavaExecSpec setMain(@Nullable
                               String main)

      Sets the fully qualified name of the main class to be executed.
      Parameters:
        `main` - the fully qualified name of the main class to be executed.
      Returns:
        this

    - #### getArgs

          @Nullable
           @Optional
           @Input
          List<String> getArgs()

      Returns the arguments passed to the main class to be executed.

    - #### args

          JavaExecSpec args(Object... args)

      Adds args for the main class to be executed.
      Parameters:
        `args` - Args for the main class.
      Returns:
        this

    - #### args

          JavaExecSpec args(Iterable<?> args)

      Adds args for the main class to be executed.
      Parameters:
        `args` - Args for the main class.
      Returns:
        this

    - #### setArgs

          JavaExecSpec setArgs(@Nullable
                               List<String> args)

      Sets the args for the main class to be executed.
      Parameters:
        `args` - Args for the main class.
      Returns:
        this
      Since:
        4.0

    - #### setArgs

          JavaExecSpec setArgs(@Nullable
                               Iterable<?> args)

      Sets the args for the main class to be executed.
      Parameters:
        `args` - Args for the main class.
      Returns:
        this

    - #### getArgumentProviders

          @Incubating
          List<CommandLineArgumentProvider> getArgumentProviders()

      Argument providers for the application.
      Since:
        4.6

    - #### classpath

          JavaExecSpec classpath(Object... paths)

      Adds elements to the classpath for executing the main class.
      Parameters:
        `paths` - classpath elements
      Returns:
        this

    - #### getClasspath

          @Classpath
          FileCollection getClasspath()

      Returns the classpath for executing the main class.

    - #### setClasspath

          JavaExecSpec setClasspath(FileCollection classpath)

      Sets the classpath for executing the main class.
      Parameters:
        `classpath` - the classpath
      Returns:
        this