ProjectLayout

API Documentation:ProjectLayout

Provides access to several important locations for a project.

An instance of this type can be injected into a task, plugin or other object by annotating a public constructor or method with javax.inject.Inject. It is also available via Project.getLayout().

Note: This interface is not intended for implementation by build script or plugin authors.

Properties

PropertyDescription
buildDirectory

The build directory for the project.

projectDirectory

The project directory.

Methods

MethodDescription
dir(file)

Creates a Directory provider whose location is calculated from the given Provider.

file(file)

Creates a RegularFile provider whose location is calculated from the given Provider.

files(paths)

Creates a read-only FileCollection containing the given files, as defined by Project.files(java.lang.Object[]).

Script blocks

No script blocks

Property details

DirectoryProperty buildDirectory

The build directory for the project.

Directory projectDirectory (read-only)

The project directory.

Method details

Creates a Directory provider whose location is calculated from the given Provider.

File system locations based on relative paths will be resolved against this layout's reference location, as defined by ProjectLayout.getProjectDirectory().

Creates a RegularFile provider whose location is calculated from the given Provider.

File system locations based on relative paths will be resolved against this layout's reference location, as defined by ProjectLayout.getProjectDirectory().

FileCollection files(Object... paths)

Creates a read-only FileCollection containing the given files, as defined by Project.files(java.lang.Object[]).

This method can also be used to create an empty collection, but the collection may not be mutated later.