org.gradle.api.plugins

## Class ApplicationPluginConvention

- java.lang.Object
- - org.gradle.api.plugins.ApplicationPluginConvention

-     public class ApplicationPluginConvention
      extends Object

  The `Convention` used for configuring the `ApplicationPlugin`.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ApplicationPluginConvention(Project project)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Iterable<String>` | `getApplicationDefaultJvmArgs()` Array of string arguments to pass to the JVM when running the application
    `CopySpec` | `getApplicationDistribution()` The specification of the contents of the distribution.
    `String` | `getApplicationName()` The name of the application.
    `String` | `getExecutableDir()` Directory to place executables in
    `String` | `getMainClassName()` The fully qualified name of the application's main class.
    `Project` | `getProject()`
    `void` | `setApplicationDefaultJvmArgs(Iterable<String> applicationDefaultJvmArgs)` Array of string arguments to pass to the JVM when running the application
    `void` | `setApplicationDistribution(CopySpec applicationDistribution)`
    `void` | `setApplicationName(String applicationName)` The name of the application.
    `void` | `setExecutableDir(String executableDir)` Directory to place executables in
    `void` | `setMainClassName(String mainClassName)` The fully qualified name of the application's main class.

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

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

- - ### Constructor Detail

    - #### ApplicationPluginConvention

          public ApplicationPluginConvention(Project project)

  - ### Method Detail

    - #### getApplicationName

          public String getApplicationName()

      The name of the application.

    - #### setApplicationName

          public void setApplicationName(String applicationName)

      The name of the application.

    - #### getMainClassName

          public String getMainClassName()

      The fully qualified name of the application's main class.

    - #### setMainClassName

          public void setMainClassName(String mainClassName)

      The fully qualified name of the application's main class.

    - #### getApplicationDefaultJvmArgs

          public Iterable<String> getApplicationDefaultJvmArgs()

      Array of string arguments to pass to the JVM when running the application

    - #### setApplicationDefaultJvmArgs

          public void setApplicationDefaultJvmArgs(Iterable<String> applicationDefaultJvmArgs)

      Array of string arguments to pass to the JVM when running the application

    - #### getExecutableDir

          @Incubating
          public String getExecutableDir()

      Directory to place executables in
      Since:
        4.5

    - #### setExecutableDir

          @Incubating
          public void setExecutableDir(String executableDir)

      Directory to place executables in
      Since:
        4.5

    - #### getApplicationDistribution

          public CopySpec getApplicationDistribution()

      The specification of the contents of the distribution.

      Use this `CopySpec` to include extra files/resource in the application distribution.

           apply plugin: 'application'

           applicationDistribution.from("some/dir") {
             include "*.txt"
           }

      Note that the application plugin pre configures this spec to; include the contents of "`src/dist`", copy the application start scripts into the "`bin`" directory, and copy the built jar and its dependencies into the "`lib`" directory.

    - #### setApplicationDistribution

          public void setApplicationDistribution(CopySpec applicationDistribution)

    - #### getProject

          public final Project getProject()