Package org.gradle.plugin.devel.tasks

## Class ValidatePlugins

- java.lang.Object
- - org.gradle.api.internal.AbstractTask
  - - org.gradle.api.DefaultTask
    - - org.gradle.plugin.devel.tasks.ValidatePlugins

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

      @CacheableTask
      public abstract class ValidatePlugins
      extends DefaultTask

  Validates plugins by checking property annotations on work items like tasks and artifact transforms. This task should be used in Gradle plugin projects for doing static analysis on the plugin classes. The java-gradle-plugin adds a `validatePlugins` task, though if you cannot use this plugin then you need to register the task yourself. See the user guide for more information on incremental build and caching task outputs.
  Since:
    6.0

- - ### 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
    --- | ---
    `ValidatePlugins()` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract ConfigurableFileCollection` | `getClasses()` | The classes to validate.
    `abstract ConfigurableFileCollection` | `getClasspath()` | The classpath used to load the classes under validation.
    `protected abstract org.gradle.api.internal.DocumentationRegistry` | `getDocumentationRegistry()` |
    `abstract Property<java.lang.Boolean>` | `getEnableStricterValidation()` | Enable the stricter validation for cacheable tasks for all tasks.
    `abstract Property<java.lang.Boolean>` | `getFailOnWarning()` | Returns whether the build should break when the verifications performed by this task detects a warning.
    `abstract Property<java.lang.Boolean>` | `getIgnoreFailures()` | Specifies whether the build should break when plugin verifications fails.
    `abstract Property<JavaLauncher>` | `getLauncher()` | The toolchain launcher used to execute workers when forking.
    `abstract RegularFileProperty` | `getOutputFile()` | Returns the output file to store the report in.
    `protected abstract WorkerExecutor` | `getWorkerExecutor()` |
    `void` | `validateTaskClasses()` |

    - ### 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

    - #### ValidatePlugins

          public ValidatePlugins()

  - ### Method Detail

    - #### validateTaskClasses

          public void validateTaskClasses()
                                   throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### getClasses

          @InputFiles
          @SkipWhenEmpty
          @IgnoreEmptyDirectories
          @PathSensitive(RELATIVE)
          public abstract ConfigurableFileCollection getClasses()

      The classes to validate.

    - #### getClasspath

          @Classpath
          public abstract ConfigurableFileCollection getClasspath()

      The classpath used to load the classes under validation.

    - #### getLauncher

          @Optional
          @Incubating
          public abstract Property<JavaLauncher> getLauncher()

      The toolchain launcher used to execute workers when forking.
      Since:
        8.1.

    - #### getIgnoreFailures

          @Input
          public abstract Property<java.lang.Boolean> getIgnoreFailures()

      Specifies whether the build should break when plugin verifications fails.

    - #### getFailOnWarning

          @Input
          public abstract Property<java.lang.Boolean> getFailOnWarning()

      Returns whether the build should break when the verifications performed by this task detects a warning.

    - #### getEnableStricterValidation

          @Input
          public abstract Property<java.lang.Boolean> getEnableStricterValidation()

      Enable the stricter validation for cacheable tasks for all tasks.

    - #### getOutputFile

          @OutputFile
          public abstract RegularFileProperty getOutputFile()

      Returns the output file to store the report in.

    - #### getDocumentationRegistry

          @Inject
          protected abstract org.gradle.api.internal.DocumentationRegistry getDocumentationRegistry()

    - #### getWorkerExecutor

          @Inject
          protected abstract WorkerExecutor getWorkerExecutor()