# Package org.gradle.api.tasks

@NonNullApi package org.gradle.api.tasks
The standard `Task` implementations.

- Related Packages
  Package
  Description
  org.gradle.api
  Gradle's build language API, which is available from your build files.
  org.gradle.api.tasks.ant
  The Ant integration `Task` implementations.
  org.gradle.api.tasks.application
  Tasks for creating and running java applications.
  org.gradle.api.tasks.bundling
  Classes related to archiving that ended up being used more broadly in the implementation.
  org.gradle.api.tasks.compile
  The compilation `Task` implementations.
  org.gradle.api.tasks.diagnostics
  The diagnostic `Task` implementations.
  org.gradle.api.tasks.incremental
  API classes for implementing incremental tasks.
  org.gradle.api.tasks.javadoc
  The documentation generation `Task` implementations.
  org.gradle.api.tasks.options
  Annotations for exposing task properties as command line options.
  org.gradle.api.tasks.scala
  org.gradle.api.tasks.testing
  The unit testing `Task` implementations.
  org.gradle.api.tasks.util
  Utility classes used by the standard task implementations.
  org.gradle.api.tasks.wrapper
  The Gradle wrapper `Task`.
- Class
  Description
  AbstractCopyTask
  `AbstractCopyTask` is the base class for all copy tasks.
  AbstractExecTask<T extends AbstractExecTask>
  `AbstractExecTask` is the base class for all exec tasks.
  AntBuilderAware
  An `AntBuilderAware` represents an object which can add itself to Ant tasks, using an `AntBuilder`.
  CacheableTask
  Attached to a task type to indicate that task output caching should be enabled by default for tasks of this type.
  Classpath
  Marks a property as specifying a JVM classpath for a task.
  ClasspathNormalizer
  Normalizes file input that represents a Java runtime classpath.
  CompileClasspath
  Marks a property as specifying a Java compile classpath for a task.
  CompileClasspathNormalizer
  Normalizes file input that represents a Java compile classpath.
  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
  Copies files into a destination directory.
  Delete
  Deletes files or directories.
  Destroys
  Marks a property as specifying a file or directory that a task destroys.
  Exec
  Executes a command line process.
  FileNormalizer
  A normalizer used to remove unwanted noise when considering file inputs.
  GradleBuild
  Executes a Gradle build.
  GroovyRuntime
  Provides information related to the Groovy runtime(s) used in a project.
  GroovySourceDirectorySet
  Represents a Groovy source set.
  GroovySourceSet
  Deprecated.
  Using convention to contribute to source sets is deprecated.
  IgnoreEmptyDirectories
  Attached to an input property to specify that directories should be ignored when snapshotting inputs.
  Input
  Attached to a task property to indicate that the property specifies some input value for the task.
  InputDirectory
  Marks a property as specifying an input directory for a task.
  InputFile
  Marks a property as specifying an input file for a task.
  InputFiles
  Marks a property as specifying the input files for a task.
  Internal
  Attached to a task property to indicate that the property is not to be taken into account for up-to-date checking.
  JavaExec
  Executes a Java application in a child process.
  LocalState
  Marks a property as specifying local state for a task.
  Nested
  Marks a property as specifying a nested bean, whose properties should be checked for annotations.
  Optional
  Marks a task property as optional.
  OutputDirectories
  Marks a property as specifying one or more output directories for a task.
  OutputDirectory
  Marks a property as specifying an output directory for a task.
  OutputFile
  Marks a property as specifying an output file for a task.
  OutputFiles
  Marks a property as specifying one or more output files for a task.
  PathSensitive
  Annotates a task file property, specifying which part of the file paths should be considered during up-to-date checks.
  PathSensitivity
  Enumeration of different path handling strategies for task properties.
  ScalaRuntime
  Provides information related to the Scala runtime(s) used in a project.
  ScalaSourceDirectorySet
  A `ScalaSourceDirectorySet` defines the properties and methods added to a `SourceSet` by the `ScalaPlugin`.
  ScalaSourceSet
  Deprecated.
  Using conventions to contribute source sets is deprecated.
  SkipWhenEmpty
  Attached to a task property to indicate that the task should be skipped when the value of the property is an empty `FileCollection` or directory.
  SourceSet
  A `SourceSet` represents a logical group of Java source and resource files.
  SourceSetContainer
  A `SourceSetContainer` manages a set of `SourceSet` objects.
  SourceSetOutput
  A collection of all output directories (compiled classes, processed resources, etc.) - notice that `SourceSetOutput` extends `FileCollection`.
  SourceTask
  A `SourceTask` performs some operation on source files.
  StopActionException
  A `StopActionException` is be thrown by a task `Action` or task action closure to stop its own execution and to start execution of the task's next action.
  StopExecutionException
  A `StopExecutionException` is thrown by a `Action` or task action closure to stop execution of the current task and start execution of the next task.
  Sync
  Synchronizes the contents of a destination directory with some source directories and files.
  TaskAction
  Marks a method as the action to run when the task is executed.
  TaskCollection<T extends Task>
  A `TaskCollection` contains a set of `Task` instances, and provides a number of query methods.
  TaskContainer
  A `TaskContainer` is responsible for managing a set of `Task` instances.
  TaskDependency
  A `TaskDependency` represents an unordered set of tasks which a `Task` depends on.
  TaskDestroyables
  Represents the files or directories that a `Task` destroys (removes).
  TaskExecutionException
  A `TaskExecutionException` is thrown when a task fails to execute successfully.
  TaskFilePropertyBuilder
  Describes a property of a task that contains zero or more files.
  TaskInputFilePropertyBuilder
  Describes an input property of a task that contains zero or more files.
  TaskInputPropertyBuilder
  Describes an input property of a task.
  TaskInputs
  A `TaskInputs` represents the inputs for a task.
  TaskInstantiationException
  A `TaskInstantiationException` is thrown when a task cannot be instantiated for some reason.
  TaskLocalState
  Represents the files or directories that represent the local state of a `Task`.
  TaskOutputFilePropertyBuilder
  Describes an output property of a task that contains zero or more files.
  TaskOutputs
  A `TaskOutputs` represents the outputs of a task.
  TaskPropertyBuilder
  Describes a property of a task.
  TaskProvider<T extends Task>
  Providers a task of the given type.
  TaskReference
  A lightweight reference to a task.
  TaskState
  `TaskState` provides information about the execution state of a `Task`.
  UntrackedTask
  Attached to a task to declare that the task should be untracked.
  Upload
  Deprecated.
  This class is scheduled for removal in Gradle 9.0.
  VerificationException
  Signals that a task has failed in a manner which does not prevent consumers of that task's output from running.
  VerificationTask
  A `VerificationTask` is a task which performs some verification of the artifacts produced by a build.
  WorkResult
  Provides information about some work which was performed.
  WorkResults
  Helps access trivial `WorkResult` objects.
  WriteProperties
  Writes a `Properties` in a way that the results can be expected to be reproducible.