# Package org.gradle.api.tasks

@NullMarked 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
  The archive bundling `Task` implementations.
  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.
  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`.
  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.
  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.