# Package-level declarations

## Types

ApplicationPlugin
Link copied to clipboard
abstract class ApplicationPlugin : Plugin<T>
A Plugin which packages and runs a project as a Java Application.
AppliedPlugin
Link copied to clipboard
interface AppliedPlugin
Represents a plugin that has been applied.
BasePlugin
Link copied to clipboard
abstract class BasePlugin : Plugin<T>
A org.gradle.api.Plugin which defines a basic project lifecycle and some common convention properties.
BasePluginExtension
Link copied to clipboard
interface BasePluginExtension
An extension used for BasePlugin.
ExtensionAware
Link copied to clipboard
interface ExtensionAware
Objects that can be extended at runtime with other objects.
ExtensionContainer
Link copied to clipboard
interface ExtensionContainer
Allows adding 'namespaced' DSL extensions to a target object.
ExtensionsSchema
Link copied to clipboard
interface ExtensionsSchema : NamedDomainObjectCollectionSchema, Iterable<T>
Schema of extensions.
ExtraPropertiesExtension
Link copied to clipboard
interface ExtraPropertiesExtension
Additional, ad-hoc, properties for Gradle domain objects.
FeatureSpec
Link copied to clipboard
interface FeatureSpec
Handler for configuring features, which may contribute additional configurations, publications, dependencies, ...
GroovyBasePlugin
Link copied to clipboard
abstract class GroovyBasePlugin : Plugin<T>
Extends org.gradle.api.plugins.JavaBasePlugin to provide support for compiling and documenting Groovy source files.
GroovyPlugin
Link copied to clipboard
abstract class GroovyPlugin : Plugin<T>
A Plugin which extends the JavaPlugin to provide support for compiling and documenting Groovy source files.
HelpTasksPlugin
Link copied to clipboard
abstract class HelpTasksPlugin : Plugin<T>
Adds various reporting tasks that provide information about the project.
InvalidPluginException
Link copied to clipboard
open class InvalidPluginException : GradleException
Thrown when a plugin is found to be invalid when it is loaded.
JavaApplication
Link copied to clipboard
interface JavaApplication
Configuration for a Java application, defining how to assemble the application.
JavaBasePlugin
Link copied to clipboard
abstract class JavaBasePlugin : Plugin<T>
A org.gradle.api.Plugin which compiles and tests Java source, and assembles it into a JAR file.
JavaLibraryDistributionPlugin
Link copied to clipboard
abstract class JavaLibraryDistributionPlugin : Plugin<T>
A Plugin which package a Java project as a distribution including the JAR and runtime dependencies.
JavaLibraryPlugin
Link copied to clipboard
abstract class JavaLibraryPlugin : Plugin<T>
A Plugin which extends the capabilities of the Java plugin by cleanly separating the API and implementation dependencies of a library.
JavaPlatformExtension
Link copied to clipboard
interface JavaPlatformExtension
The extension to configure a Java platform project.
JavaPlatformPlugin
Link copied to clipboard
abstract class JavaPlatformPlugin : Plugin<T>
The Java platform plugin allows building platform components for Java, which are usually published as BOM files (for Maven) or Gradle platforms (Gradle metadata).
JavaPlugin
Link copied to clipboard
abstract class JavaPlugin : Plugin<T>
A Plugin which compiles and tests Java source, and assembles it into a JAR file.
JavaPluginExtension
Link copied to clipboard
interface JavaPluginExtension
Common configuration for JVM (Java) based projects.
JavaResolutionConsistency
Link copied to clipboard
@Incubating
interface JavaResolutionConsistency
Dependency resolution consistency configuration for the Java derived plugins.
JavaTestFixturesPlugin
Link copied to clipboard
abstract class JavaTestFixturesPlugin : Plugin<T>
Adds support for producing test fixtures.
JvmEcosystemPlugin
Link copied to clipboard
abstract class JvmEcosystemPlugin : Plugin<T>
A base plugin for projects working in a JVM world.
JvmTestSuitePlugin
Link copied to clipboard
@Incubating
abstract class JvmTestSuitePlugin : Plugin<T>
A org.gradle.api.Plugin that adds extensions for declaring, compiling and running JvmTestSuites.
JvmToolchainManagementPlugin
Link copied to clipboard
@Incubating
abstract class JvmToolchainManagementPlugin : Plugin<T>
A plugin that provides JVM specific ToolchainManagement configuration.
JvmToolchainsPlugin
Link copied to clipboard
@Incubating
abstract class JvmToolchainsPlugin : Plugin<T>
A plugin that provides JVM toolchains for projects that need to execute Java from local JVM installations or run the tools included in a JDK.
ObjectConfigurationAction
Link copied to clipboard
interface ObjectConfigurationAction
An `ObjectConfigurationAction` allows you to apply org.gradle.api.Plugins and scripts to an object or objects.
PluginAware
Link copied to clipboard
interface PluginAware
Something that can have plugins applied to it.
PluginCollection
Link copied to clipboard
interface PluginCollection<T : Plugin?> : DomainObjectSet<T>
A `PluginCollection` represents a collection of org.gradle.api.Plugin instances.
PluginContainer
Link copied to clipboard
interface PluginContainer : PluginCollection<T>
A `PluginContainer` is used to manage a set of org.gradle.api.Plugin instances applied to a particular project.
PluginInstantiationException
Link copied to clipboard
open class PluginInstantiationException : GradleException
A `PluginInstantiationException` is thrown when a plugin cannot be instantiated.
PluginManager
Link copied to clipboard
@NonExtensible
interface PluginManager
Facilitates applying plugins and determining which plugins have been applied to a PluginAware object.
ProjectReportsPlugin
Link copied to clipboard
@NullMarked
abstract class ProjectReportsPlugin : Plugin<T>
A Plugin which adds some project visualization report tasks to a project.
ReportingBasePlugin
Link copied to clipboard
abstract class ReportingBasePlugin : Plugin<T>
A Plugin which provides the basic skeleton for reporting.
SoftwareReportingTasksPlugin
Link copied to clipboard
@Incubating
@NullMarked
abstract class SoftwareReportingTasksPlugin : Plugin<T>
Adds various reporting tasks that provide information about a software project, such as information about configurations and dependency reporting tasks that make use of dependency management.
TestReportAggregationPlugin
Link copied to clipboard
@Incubating
abstract class TestReportAggregationPlugin : Plugin<T>
Adds configurations to for resolving variants containing test execution results, which may span multiple subprojects.
UnknownPluginException
Link copied to clipboard
open class UnknownPluginException : InvalidUserDataException
A `UnknownPluginException` is thrown when an unknown plugin id is provided.
WarPlugin
Link copied to clipboard
abstract class WarPlugin : Plugin<T>
A Plugin which extends the JavaPlugin to add tasks which assemble a web application into a WAR file.