Package: org.gradle.api.plugins.quality

## [Java] Class PmdPlugin

- org.gradle.api.plugins.quality.PmdPlugin

- A plugin for the PMD source code analyzer.

  Declares a `pmd` configuration which needs to be configured with the PMD library to be used.

  For each source set that is to be analyzed, a Pmd task is created and configured to analyze all Java code.

  All PMD tasks (including user-defined ones) are added to the `check` lifecycle task.

  See Also:
    PmdExtension
    Pmd

- - ### Field Summary

    Fields
    Modifiers | Name | Description
    --- | --- | ---
    `static String` | `DEFAULT_PMD_VERSION` |

  - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `protected void` | `configureForSourceSet(SourceSet sourceSet, Pmd task)`
    `protected void` | `configureTaskDefaults(Pmd task, String baseName)`
    `protected CodeQualityExtension` | `createExtension()`
    `TargetJdk` | `getDefaultTargetJdk(JavaVersion javaVersion)`
    `protected Class<Pmd>` | `getTaskType()`
    `protected String` | `getToolName()`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin` | `org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#apply(org.gradle.api.internal.project.ProjectInternal), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#apply(java.lang.Object), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#setProperty(java.lang.String, java.lang.Object), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#getProperty(java.lang.String), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#invokeMethod(java.lang.String, java.lang.Object), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#setMetaClass(groovy.lang.MetaClass), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#getMetaClass(), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#wait(long, int), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#wait(long), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#wait(), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#equals(java.lang.Object), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#toString(), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#hashCode(), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#getClass(), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#notify(), org.gradle.api.plugins.quality.internal.AbstractCodeQualityPlugin#notifyAll()`
    `class groovy.lang.GroovyObjectSupport` | `groovy.lang.GroovyObjectSupport#setProperty(java.lang.String, java.lang.Object), groovy.lang.GroovyObjectSupport#getProperty(java.lang.String), groovy.lang.GroovyObjectSupport#invokeMethod(java.lang.String, java.lang.Object), groovy.lang.GroovyObjectSupport#setMetaClass(groovy.lang.MetaClass), groovy.lang.GroovyObjectSupport#getMetaClass(), groovy.lang.GroovyObjectSupport#wait(long, int), groovy.lang.GroovyObjectSupport#wait(long), groovy.lang.GroovyObjectSupport#wait(), groovy.lang.GroovyObjectSupport#equals(java.lang.Object), groovy.lang.GroovyObjectSupport#toString(), groovy.lang.GroovyObjectSupport#hashCode(), groovy.lang.GroovyObjectSupport#getClass(), groovy.lang.GroovyObjectSupport#notify(), groovy.lang.GroovyObjectSupport#notifyAll()`

- - ### Field Detail

    - #### public static final String DEFAULT_PMD_VERSION

  - ### Method Detail

    - #### @Override protected void configureForSourceSet(SourceSet sourceSet, Pmd task)

    - #### @Override protected void configureTaskDefaults(Pmd task, String baseName)

    - #### @Override protected CodeQualityExtension createExtension()

    - #### public TargetJdk getDefaultTargetJdk(JavaVersion javaVersion)

    - #### @Override protected Class<Pmd> getTaskType()

    - #### @Override protected String getToolName()