Package org.gradle.plugin.devel

## Class PluginDeclaration

- java.lang.Object
- - org.gradle.plugin.devel.PluginDeclaration

- All Implemented Interfaces:
    `java.io.Serializable`, `Named`

      public abstract class PluginDeclaration
      extends java.lang.Object
      implements Named, java.io.Serializable

  Describes a Gradle plugin under development.
  Since:
    2.14
  See Also:
    `JavaGradlePluginPlugin`, Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.gradle.api.Named

      `Named.Namer`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `PluginDeclaration​(java.lang.String name)` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.String` | `getDescription()` | Returns the description for this plugin declaration.
    `java.lang.String` | `getDisplayName()` | Returns the display name for this plugin declaration.
    `java.lang.String` | `getId()` |
    `java.lang.String` | `getImplementationClass()` |
    `java.lang.String` | `getName()` | The object's name.
    `abstract SetProperty<java.lang.String>` | `getTags()` | Returns the tags property for this plugin declaration.
    `void` | `setDescription​(java.lang.String description)` | Sets the description for this plugin declaration.
    `void` | `setDisplayName​(java.lang.String displayName)` | Sets the display name for this plugin declaration.
    `void` | `setId​(java.lang.String id)` |
    `void` | `setImplementationClass​(java.lang.String implementationClass)` |

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

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

- - ### Constructor Detail

    - #### PluginDeclaration

          public PluginDeclaration​(java.lang.String name)

  - ### Method Detail

    - #### getName

          public java.lang.String getName()

      Description copied from interface: `Named`
      The object's name.

      Must be constant for the life of the object.

      Specified by:
        `getName` in interface `Named`
      Returns:
        The name. Never null.

    - #### getId

          public java.lang.String getId()

    - #### setId

          public void setId​(java.lang.String id)

    - #### getImplementationClass

          public java.lang.String getImplementationClass()

    - #### setImplementationClass

          public void setImplementationClass​(java.lang.String implementationClass)

    - #### getDisplayName

          public java.lang.String getDisplayName()

      Returns the display name for this plugin declaration.

      The display name is used when publishing this plugin to repositories that support human-readable artifact names.

      Since:
        4.10

    - #### setDisplayName

          public void setDisplayName​(java.lang.String displayName)

      Sets the display name for this plugin declaration.

      The display name is used when publishing this plugin to repositories that support human-readable artifact names.

      Since:
        4.10

    - #### getDescription

          public java.lang.String getDescription()

      Returns the description for this plugin declaration.

      The description is used when publishing this plugin to repositories that support providing descriptions for artifacts.

      Since:
        4.10

    - #### setDescription

          public void setDescription​(java.lang.String description)

      Sets the description for this plugin declaration.

      The description is used when publishing this plugin to repositories that support providing descriptions for artifacts.

      Since:
        4.10

    - #### getTags

          @Incubating
          public abstract SetProperty<java.lang.String> getTags()

      Returns the tags property for this plugin declaration.

      Tags are used when publishing this plugin to repositories that support tagging plugins, for example the Gradle Plugin Portal.

      Since:
        7.6