@NonNullApi

# Package org.gradle.api.file

Classes for working with files.

- Interface Summary
  Interface | Description
  --- | ---
  ConfigurableFileCollection | A `ConfigurableFileCollection` is a mutable `FileCollection`.
  ConfigurableFileTree | A `FileTree` with a single base directory, which can be configured and modified.
  ContentFilterable | Represents some binary resource whose content can be filtered.
  CopyProcessingSpec | Specifies the destination of a copy.
  CopySourceSpec | Specifies sources for a file copy.
  CopySpec | A set of specifications for copying files.
  DeleteSpec | A specification for deleting files from the filesystem.
  Directory | Represents a directory at some fixed location on the file system.
  DirectoryProperty | Represents some configurable directory location, whose value is mutable.
  DirectoryTree | A directory with some associated include and exclude patterns.
  FileCollection | A `FileCollection` represents a collection of files which you can query in certain ways.
  FileCopyDetails | Provides details about a file or directory about to be copied, and allows some aspects of the destination file to be modified.
  FileSystemLocation | Represents some immutable location on the file system.
  FileTree | A `FileTree` represents a hierarchy of files.
  FileTreeElement | Information about a file in a `FileTree`.
  FileVisitDetails | Provides access to details about a file or directory being visited by a `FileVisitor`.
  FileVisitor | A `FileVisitor` is used to visit each of the files in a `FileTree`.
  ProjectLayout | Provides access to several important locations for a project.
  RegularFile | Represents a regular file at a fixed location on the file system.
  RegularFileProperty | Represents some configurable regular file location, whose value is mutable.
  ReproducibleFileVisitor | Visitor which can request a reproducible file order.
  SourceDirectorySet | A `SourceDirectorySet` represents a set of source files composed from a set of source directories, along with associated include and exclude patterns.

- Class Summary
  Class | Description
  --- | ---
  EmptyFileVisitor | The EmptyFileVisitor can be extends by implementations that only require to implement one of the 2 visit methods (dir or file).
  RelativePath | Represents a relative path from some base directory to a file.

- Enum Summary
  Enum | Description
  --- | ---
  DuplicatesStrategy | Strategies for dealing with the potential creation of duplicate files for or archive entries.
  FileCollection.AntType | Ant types which a `FileCollection` can be mapped to.

- Exception Summary
  Exception | Description
  --- | ---
  DuplicateFileCopyingException | Thrown when more than one file with the same relative path name is to be copied and the `DuplicatesStrategy` is set to DuplicatesStrategy.FAIL
  UnableToDeleteFileException | Thrown by Gradle when it is unable to delete a file.