# Package-level declarations

The standard org.gradle.api.Task implementations.

## Types

AbstractCopyTask
Link copied to clipboard
@NullMarked
@DisableCachingByDefault(because = "Abstract super-class, not to be instantiated directly")
abstract class AbstractCopyTask : ConventionTask, CopySpec, CopySpecSource
`AbstractCopyTask` is the base class for all copy tasks.
AbstractExecTask
Link copied to clipboard
@DisableCachingByDefault(because = "Abstract super-class, not to be instantiated directly")
abstract class AbstractExecTask<T : AbstractExecTask?> : ConventionTask, ExecSpec
`AbstractExecTask` is the base class for all exec tasks.
AntBuilderAware
Link copied to clipboard
interface AntBuilderAware
An `AntBuilderAware` represents an object which can add itself to Ant tasks, using an org.gradle.api.AntBuilder.
CacheableTask
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.TYPE])
annotation class CacheableTask
Attached to a task type to indicate that task output caching should be enabled by default for tasks of this type.
Classpath
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class Classpath
Marks a property as specifying a JVM classpath for a task.
ClasspathNormalizer
Link copied to clipboard
interface ClasspathNormalizer : FileNormalizer
Normalizes file input that represents a Java runtime classpath.
CompileClasspath
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class CompileClasspath
Marks a property as specifying a Java compile classpath for a task.
CompileClasspathNormalizer
Link copied to clipboard
interface CompileClasspathNormalizer : FileNormalizer
Normalizes file input that represents a Java compile classpath.
Console
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class Console
Attached to a task property to indicate that the property is not to be taken into account for up-to-date checking, because its value only influences the console output of the task.
Copy
Link copied to clipboard
@DisableCachingByDefault(because = "Not worth caching")
abstract class Copy : AbstractCopyTask
Copies files into a destination directory.
Delete
Link copied to clipboard
@DisableCachingByDefault(because = "Deletion cannot be cached")
abstract class Delete : ConventionTask, DeleteSpec
Deletes files or directories.
Destroys
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class Destroys
Marks a property as specifying a file or directory that a task destroys.
Exec
Link copied to clipboard
@DisableCachingByDefault(because = "Gradle would require more information to cache this task")
abstract class Exec : AbstractExecTask<T>
Executes a command line process.
FileNormalizer
Link copied to clipboard
interface FileNormalizer
A normalizer used to remove unwanted noise when considering file inputs.
GradleBuild
Link copied to clipboard
@DisableCachingByDefault(because = "Child Gradle build will do its own caching")
abstract class GradleBuild : ConventionTask
Executes a Gradle build.
GroovyRuntime
Link copied to clipboard
abstract class GroovyRuntime
Provides information related to the Groovy runtime(s) used in a project.
GroovySourceDirectorySet
Link copied to clipboard
interface GroovySourceDirectorySet : SourceDirectorySet
Represents a Groovy source set.
IgnoreEmptyDirectories
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class IgnoreEmptyDirectories
Attached to an input property to specify that directories should be ignored when snapshotting inputs.
Input
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class Input
Attached to a task property to indicate that the property specifies some input value for the task.
InputDirectory
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class InputDirectory
Marks a property as specifying an input directory for a task.
InputFile
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class InputFile
Marks a property as specifying an input file for a task.
InputFiles
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class InputFiles
Marks a property as specifying the input files for a task.
Internal
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class Internal
Attached to a task property to indicate that the property is not to be taken into account for up-to-date checking.
JavaExec
Link copied to clipboard
@DisableCachingByDefault(because = "Gradle would require more information to cache this task")
abstract class JavaExec : ConventionTask, JavaExecSpec
Executes a Java application in a child process.
LocalState
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class LocalState
Marks a property as specifying local state for a task.
Nested
Link copied to clipboard
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class Nested
Marks a property as specifying a nested bean, whose properties should be checked for annotations.
Optional
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class Optional
Marks a task property as optional.
OutputDirectories
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class OutputDirectories
Marks a property as specifying one or more output directories for a task.
OutputDirectory
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class OutputDirectory
Marks a property as specifying an output directory for a task.
OutputFile
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class OutputFile
Marks a property as specifying an output file for a task.
OutputFiles
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class OutputFiles
Marks a property as specifying one or more output files for a task.
PathSensitive
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class PathSensitive
Annotates a task file property, specifying which part of the file paths should be considered during up-to-date checks.
PathSensitivity
Link copied to clipboard
enum PathSensitivity
Enumeration of different path handling strategies for task properties.
ScalaRuntime
Link copied to clipboard
abstract class ScalaRuntime
Provides information related to the Scala runtime(s) used in a project.
ScalaSourceDirectorySet
Link copied to clipboard
interface ScalaSourceDirectorySet : SourceDirectorySet
A `ScalaSourceDirectorySet` defines the properties and methods added to a org.gradle.api.tasks.SourceSet by the `ScalaPlugin`.
SkipWhenEmpty
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.METHOD, ElementType.FIELD])
annotation class SkipWhenEmpty
Attached to a task property to indicate that the task should be skipped when the value of the property is an empty org.gradle.api.file.FileCollection or directory.
SourceSet
Link copied to clipboard
interface SourceSet : ExtensionAware
A `SourceSet` represents a logical group of Java source and resource files.
SourceSetContainer
Link copied to clipboard
@ServiceScope(value = Project::class)
interface SourceSetContainer : NamedDomainObjectContainer<T>
A `SourceSetContainer` manages a set of SourceSet objects.
SourceSetOutput
Link copied to clipboard
interface SourceSetOutput : FileCollection
A collection of all output directories (compiled classes, processed resources, etc.
SourceTask
Link copied to clipboard
@NullMarked
@DisableCachingByDefault(because = "Super-class, not to be instantiated directly")
abstract class SourceTask : ConventionTask, PatternFilterable
A `SourceTask` performs some operation on source files.
StopActionException
Link copied to clipboard
open class StopActionException : GradleException
A `StopActionException` is be thrown by a task org.gradle.api.Action or task action closure to stop its own execution and to start execution of the task's next action.
StopExecutionException
Link copied to clipboard
open class StopExecutionException : RuntimeException
A `StopExecutionException` is thrown by a org.gradle.api.Action or task action closure to stop execution of the current task and start execution of the next task.
Sync
Link copied to clipboard
@DisableCachingByDefault(because = "Not worth caching")
abstract class Sync : AbstractCopyTask
Synchronizes the contents of a destination directory with some source directories and files.
TaskAction
Link copied to clipboard
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = ElementType.METHOD)
@Inherited
annotation class TaskAction
Marks a method as the action to run when the task is executed.
TaskCollection
Link copied to clipboard
interface TaskCollection<T : Task?> : NamedDomainObjectSet<T>
A `TaskCollection` contains a set of Task instances, and provides a number of query methods.
TaskContainer
Link copied to clipboard
interface TaskContainer : TaskCollection<T> , PolymorphicDomainObjectContainer<T>
A `TaskContainer` is responsible for managing a set of Task instances.
TaskDependency
Link copied to clipboard
interface TaskDependency
A `TaskDependency` represents an unordered set of tasks which a Task depends on.
TaskDestroyables
Link copied to clipboard
interface TaskDestroyables
Represents the files or directories that a org.gradle.api.Task destroys (removes).
TaskExecutionException
Link copied to clipboard
open class TaskExecutionException : DefaultMultiCauseException
A `TaskExecutionException` is thrown when a task fails to execute successfully.
TaskFilePropertyBuilder
Link copied to clipboard
interface TaskFilePropertyBuilder : TaskPropertyBuilder
Describes a property of a task that contains zero or more files.
TaskInputFilePropertyBuilder
Link copied to clipboard
interface TaskInputFilePropertyBuilder : TaskFilePropertyBuilder
Describes an input property of a task that contains zero or more files.
TaskInputPropertyBuilder
Link copied to clipboard
interface TaskInputPropertyBuilder : TaskPropertyBuilder
Describes an input property of a task.
TaskInputs
Link copied to clipboard
interface TaskInputs
A `TaskInputs` represents the inputs for a task.
TaskInstantiationException
Link copied to clipboard
open class TaskInstantiationException : GradleException
A `TaskInstantiationException` is thrown when a task cannot be instantiated for some reason.
TaskLocalState
Link copied to clipboard
interface TaskLocalState
Represents the files or directories that represent the local state of a org.gradle.api.Task.
TaskOutputFilePropertyBuilder
Link copied to clipboard
interface TaskOutputFilePropertyBuilder : TaskFilePropertyBuilder
Describes an output property of a task that contains zero or more files.
TaskOutputs
Link copied to clipboard
interface TaskOutputs
A `TaskOutputs` represents the outputs of a task.
TaskPropertyBuilder
Link copied to clipboard
interface TaskPropertyBuilder
Describes a property of a task.
TaskProvider
Link copied to clipboard
interface TaskProvider<T : Task?> : NamedDomainObjectProvider<T>
Providers a task of the given type.
TaskReference
Link copied to clipboard
interface TaskReference : Named
A lightweight reference to a task.
TaskState
Link copied to clipboard
interface TaskState
`TaskState` provides information about the execution state of a org.gradle.api.Task.
UntrackedTask
Link copied to clipboard
@Documented
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = [ElementType.TYPE])
annotation class UntrackedTask
Attached to a task to declare that the task should be untracked.
VerificationException
Link copied to clipboard
open class VerificationException : GradleException
Signals that a task has failed in a manner which does not prevent consumers of that task's output from running.
VerificationTask
Link copied to clipboard
interface VerificationTask
A `VerificationTask` is a task which performs some verification of the artifacts produced by a build.
WorkResult
Link copied to clipboard
interface WorkResult
Provides information about some work which was performed.
WorkResults
Link copied to clipboard
open class WorkResults
Helps access trivial WorkResult objects.
WriteProperties
Link copied to clipboard
@CacheableTask
abstract class WriteProperties : DefaultTask
Writes a java.util.Properties in a way that the results can be expected to be reproducible.