Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.gradle.api.initialization
Interface Settings

All Known Implementing Classes:
  BaseSettings

    public interface Settings

`Settings` declares the configuration required to instantiate and evaluate the hierarchy of `Project` instances which are to participate in a build.

There is a one-to-one correspondence between a `Settings` instance and a `"settings.gradle"` settings file. Before Gradle assembles the projects for a build, it creates a `Settings` instance and executes the settings file against it.

### Assembling a Multi-Project Build

One of the purposes of the `Settings` object is to allow you to declare the projects which are to be included in the build. You add projects to the build using the `include(String[])` method. There is always a root project included in a build. It is added automatically when the `Settings` object is created. The root project's name defaults to the name of the directory containing the settings file. The root project's project directory defaults to the directory containing the settings file.

When a project is included in the build, a `ProjectDescriptor` is created. You can use this descriptor to change the default vaules for several properties of the project.

### Using Settings in a Settings File

#### Dynamic Properties

In addition to the properties of this interface, the `Settings` object makes some additional read-only properties available to the settings script. This includes properties from the following sources:

- Defined in the "gradle.properties" file located in the settings directory of the build.
- Defined the "gradle.properties" file located in the user's `.gradle` directory.
- Provided on the command-line using the -P option.

Field Summary
`static java.lang.String` | `BUILD_DEPENDENCIES_GROUP`
`static java.lang.String` | `BUILD_DEPENDENCIES_NAME`
`static java.lang.String` | `BUILD_DEPENDENCIES_VERSION`
`static java.lang.String` | `DEFAULT_SETTINGS_FILE` The default name for the settings file.

Method Summary
`ProjectDescriptor` | `findProject(java.io.File projectDir)` Returns the project with the given project directory.
`ProjectDescriptor` | `findProject(java.lang.String path)` Returns the project with the given path.
`java.io.File` | `getRootDir()` Returns the root directory of the build.
`ProjectDescriptor` | `getRootProject()` Returns the root project of the build.
`java.io.File` | `getSettingsDir()` Returns the settings directory of the build.
`StartParameter` | `getStartParameter()` Returns the set of parameters used to invoke this instance of Gradle.
`void` | `include(java.lang.String[] projectPaths)` Adds the given projects to the build.
`void` | `includeFlat(java.lang.String[] projectNames)` Adds the given projects to the build.
`ProjectDescriptor` | `project(java.io.File projectDir)` Returns the project with the given project directory.
`ProjectDescriptor` | `project(java.lang.String path)` Returns the project with the given path.

Field Detail

### DEFAULT_SETTINGS_FILE

    static final java.lang.String DEFAULT_SETTINGS_FILE

  The default name for the settings file.

  See Also:
    Constant Field Values

### BUILD_DEPENDENCIES_GROUP

    static final java.lang.String BUILD_DEPENDENCIES_GROUP

See Also:
  Constant Field Values

### BUILD_DEPENDENCIES_VERSION

    static final java.lang.String BUILD_DEPENDENCIES_VERSION

See Also:
  Constant Field Values

### BUILD_DEPENDENCIES_NAME

    static final java.lang.String BUILD_DEPENDENCIES_NAME

See Also:
  Constant Field Values

Method Detail

### include

    void include(java.lang.String[] projectPaths)

  Adds the given projects to the build. Each path in the supplied list is treated as the path of a project to add to the build. Note that these path are not file paths, but instead specify the location of the new project in the project heirarchy. As such, the supplied paths must use the ':' character as separator.

  The last element of the supplied path is used as the project name. The supplied path is converted to a project directory relative to the root project directory.

  As an example, the path `a:b` adds a project with path `:a:b`, name `b` and project directory `$rootDir/a/b`.

  Parameters:
    `projectPaths` - the projects to add.

### includeFlat

    void includeFlat(java.lang.String[] projectNames)

  Adds the given projects to the build. Each name in the supplied list is treated as the name of a project to add to the build.

  The supplied name is converted to a project directory relative to the parent directory of the root project directory.

  As an example, the name `a` add a project with path `:a`, name `a` and project directory `$rootDir/../a`.

  Parameters:
    `projectNames` - the projects to add.

### getSettingsDir

    java.io.File getSettingsDir()

  Returns the settings directory of the build. The settings directory is the directory containing the settings file.

  Returns:
    The settings directory. Never returns null.

### getRootDir

    java.io.File getRootDir()

  Returns the root directory of the build. The root directory is the project directory of the root project.

  Returns:
    The root directory. Never returns null.

### getRootProject

    ProjectDescriptor getRootProject()

  Returns the root project of the build.

  Returns:
    The root project. Never returns null.

### project

    ProjectDescriptor project(java.lang.String path)
                              throws UnknownProjectException

  Returns the project with the given path.

  Parameters:
    `path` - The path.
  Returns:
    The project with the given path. Never returns null.
  Throws:
    `UnknownProjectException` - If no project with the given path exists.

### findProject

    ProjectDescriptor findProject(java.lang.String path)

  Returns the project with the given path.

  Parameters:
    `path` - The path
  Returns:
    The project with the given path. Returns null if no such project exists.

### project

    ProjectDescriptor project(java.io.File projectDir)
                              throws UnknownProjectException

  Returns the project with the given project directory.

  Parameters:
    `projectDir` - The project directory.
  Returns:
    The project with the given project directory. Never returns null.
  Throws:
    `UnknownProjectException` - If no project with the given path exists.

### findProject

    ProjectDescriptor findProject(java.io.File projectDir)

  Returns the project with the given project directory.

  Parameters:
    `projectDir` - The project directory.
  Returns:
    The project with the given project directory. Returns null if no such project exists.

### getStartParameter

    StartParameter getStartParameter()

  Returns the set of parameters used to invoke this instance of Gradle.

  Returns:
    The parameters. Never returns null.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD