@NonNullApi

# Package org.gradle.api.file

Classes for working with files.

- Interface Summary
  Interface | Description
  --- | ---
  ArchiveOperations | Operations on archives such as ZIP or TAR files.
  ConfigurableFileCollection | A `ConfigurableFileCollection` is a mutable `FileCollection`.
  ConfigurableFilePermissions | Provides the means of specifying file and directory access permissions for all classes of system users.
  ConfigurableFileTree | A `FileTree` with a single base directory, which can be configured and modified.
  ConfigurableUserClassFilePermissions | Provides the means of specifying file and directory access permissions for a certain class of users (see `ConfigurableFilePermissions`).
  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.
  ExpandDetails | Additional configuration parameters for `ContentFilterable.expand(Map, Action)` action.
  FileCollection | A `FileCollection` represents a collection of file system locations which you can query in certain ways.
  FileContents | Provides lazy access to the contents of a given file.
  FileCopyDetails | Provides details about a file or directory about to be copied, and allows some aspects of the destination file to be modified.
  FilePermissions | Describes file and directory access permissions for all classes of system users.
  FileSystemLocation | Represents some immutable location on the file system.
  FileSystemLocationProperty<T extends FileSystemLocation> | Represents some element of the file system.
  FileSystemOperations | Operations on the file system.
  FileTree | A `FileTree` represents a hierarchy of files.
  FileTreeElement | Information about a file in a directory/file tree.
  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.
  SyncSpec | Synchronizes the contents of a destination directory with some source directories and files.
  UserClassFilePermissions | Describes file and directory access permissions for a certain class of users (see `FilePermissions`).

- 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 or archive entries.
  FileCollection.AntType | Ant types which a `FileCollection` can be mapped to.
  FileType | The type of a file.

- 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