Package org.gradle.api.plugins

## Class JavaPluginConvention

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

-     public abstract class JavaPluginConvention
      extends Object

  Is mixed into the project when applying the `JavaBasePlugin` or the `JavaPlugin`.

- - ### Constructor Summary

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

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract void` | `disableAutoTargetJvm()` | If this method is called, Gradle will not automatically try to fetch dependencies which have a JVM version compatible with this module.
    `abstract boolean` | `getAutoTargetJvmDisabled()` | Tells if automatic JVM targeting is enabled.
    `abstract File` | `getDocsDir()` | Returns a file pointing to the root directory supposed to be used for all docs.
    `abstract String` | `getDocsDirName()` | The name of the docs directory.
    `abstract org.gradle.api.internal.project.ProjectInternal` | `getProject()` |
    `abstract JavaVersion` | `getSourceCompatibility()` | Returns the source compatibility used for compiling Java sources.
    `abstract SourceSetContainer` | `getSourceSets()` | The source sets container.
    `abstract JavaVersion` | `getTargetCompatibility()` | Returns the target compatibility used for compiling Java sources.
    `abstract File` | `getTestReportDir()` | Returns a file pointing to the root directory to be used for reports.
    `abstract String` | `getTestReportDirName()` | The name of the test reports directory.
    `abstract File` | `getTestResultsDir()` | Returns a file pointing to the root directory of the test results.
    `abstract String` | `getTestResultsDirName()` | The name of the test results directory.
    `abstract Manifest` | `manifest()` | Creates a new instance of a `Manifest`.
    `abstract Manifest` | `manifest​(Closure closure)` | Creates and configures a new instance of a `Manifest`.
    `abstract Manifest` | `manifest​(Action<? super Manifest> action)` | Creates and configures a new instance of a `Manifest`.
    `abstract void` | `setDocsDirName​(String docsDirName)` |
    `abstract void` | `setSourceCompatibility​(Object value)` | Sets the source compatibility used for compiling Java sources.
    `abstract void` | `setSourceCompatibility​(JavaVersion value)` | Sets the source compatibility used for compiling Java sources.
    `abstract void` | `setTargetCompatibility​(Object value)` | Sets the target compatibility used for compiling Java sources.
    `abstract void` | `setTargetCompatibility​(JavaVersion value)` | Sets the target compatibility used for compiling Java sources.
    `abstract void` | `setTestReportDirName​(String testReportDirName)` |
    `abstract void` | `setTestResultsDirName​(String testResultsDirName)` |
    `abstract Object` | `sourceSets​(Closure closure)` | Configures the source sets of this project.

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

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

- - ### Constructor Detail

    - #### JavaPluginConvention

          public JavaPluginConvention()

  - ### Method Detail

    - #### sourceSets

          public abstract Object sourceSets​(Closure closure)

      Configures the source sets of this project.

      The given closure is executed to configure the `SourceSetContainer`. The `SourceSetContainer` is passed to the closure as its delegate.

      See the example below how `SourceSet` 'main' is accessed and how the `SourceDirectorySet` 'java' is configured to exclude some package from compilation.

           plugins {
               id 'java'
           }

           sourceSets {
             main {
               java {
                 exclude 'some/unwanted/package/**'
               }
             }
           }

      Parameters:
        `closure` - The closure to execute.
      Returns:
        NamedDomainObjectContainer<org.gradle.api.tasks.SourceSet>

    - #### getDocsDir

          public abstract File getDocsDir()

      Returns a file pointing to the root directory supposed to be used for all docs.

    - #### getTestResultsDir

          public abstract File getTestResultsDir()

      Returns a file pointing to the root directory of the test results.

    - #### getTestReportDir

          public abstract File getTestReportDir()

      Returns a file pointing to the root directory to be used for reports.

    - #### getSourceCompatibility

          public abstract JavaVersion getSourceCompatibility()

      Returns the source compatibility used for compiling Java sources.

    - #### setSourceCompatibility

          public abstract void setSourceCompatibility​(Object value)

      Sets the source compatibility used for compiling Java sources.
      Parameters:
        `value` - The value for the source compatibility as defined by `JavaVersion.toVersion(Object)`

    - #### setSourceCompatibility

          public abstract void setSourceCompatibility​(JavaVersion value)

      Sets the source compatibility used for compiling Java sources.
      Parameters:
        `value` - The value for the source compatibility

    - #### getTargetCompatibility

          public abstract JavaVersion getTargetCompatibility()

      Returns the target compatibility used for compiling Java sources.

    - #### setTargetCompatibility

          public abstract void setTargetCompatibility​(Object value)

      Sets the target compatibility used for compiling Java sources.
      Parameters:
        `value` - The value for the target compatibility as defined by `JavaVersion.toVersion(Object)`

    - #### setTargetCompatibility

          public abstract void setTargetCompatibility​(JavaVersion value)

      Sets the target compatibility used for compiling Java sources.
      Parameters:
        `value` - The value for the target compatibility

    - #### manifest

          public abstract Manifest manifest()

      Creates a new instance of a `Manifest`.

    - #### manifest

          public abstract Manifest manifest​(Closure closure)

      Creates and configures a new instance of a `Manifest`. The given closure configures the new manifest instance before it is returned.
      Parameters:
        `closure` - The closure to use to configure the manifest.

    - #### manifest

          public abstract Manifest manifest​(Action<? super Manifest> action)

      Creates and configures a new instance of a `Manifest`.
      Parameters:
        `action` - The action to use to configure the manifest.
      Since:
        3.5

    - #### getDocsDirName

          public abstract String getDocsDirName()

      The name of the docs directory. Can be a name or a path relative to the build dir.

    - #### setDocsDirName

          public abstract void setDocsDirName​(String docsDirName)

    - #### getTestResultsDirName

          public abstract String getTestResultsDirName()

      The name of the test results directory. Can be a name or a path relative to the build dir.

    - #### setTestResultsDirName

          public abstract void setTestResultsDirName​(String testResultsDirName)

    - #### getTestReportDirName

          public abstract String getTestReportDirName()

      The name of the test reports directory. Can be a name or a path relative to `ReportingExtension.getBaseDir()`.

    - #### setTestReportDirName

          public abstract void setTestReportDirName​(String testReportDirName)

    - #### getSourceSets

          public abstract SourceSetContainer getSourceSets()

      The source sets container.

    - #### getProject

          public abstract org.gradle.api.internal.project.ProjectInternal getProject()

    - #### disableAutoTargetJvm

          public abstract void disableAutoTargetJvm()

      If this method is called, Gradle will not automatically try to fetch dependencies which have a JVM version compatible with this module. This should be used whenever the default behavior is not applicable, in particular when for some reason it's not possible to split a module and that this module only has some classes which require dependencies on higher versions.
      Since:
        5.3

    - #### getAutoTargetJvmDisabled

          public abstract boolean getAutoTargetJvmDisabled()

      Tells if automatic JVM targeting is enabled. When disabled, Gradle will not automatically try to get dependencies corresponding to the same (or compatible) level as the target compatibility of this module.
      Since:
        5.3