Overview | Package | Class | Deprecated | Index | Help
| Groovy Documentation
| FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.gradle.tooling
[Java] Class GradleConnector

    java.lang.Object
      org.gradle.tooling.GradleConnector

    public abstract class GradleConnector

A `GradleConnector` is the main entry point to the Gradle tooling API. You use this API as follows:

1. Call newConnector() to create a new connector instance.
2. Configure the connector. You must call forProjectDirectory(java.io.File) to specify which project you wish to connect to. Other methods are optional.
3. Call connect() to create the connection to a project.
4. When finished with the connection, call ProjectConnection#close()#close() to clean up.

Example:

     ProjectConnection connection = GradleConnector.newConnector()
        .forProjectDirectory(new File("someProjectFolder"))
        .connect();

     try {
        connection.newBuild().forTasks("tasks").run();
     } finally {
        connection.close();
     }

`GradleConnector` instances are not thread-safe. If you want to use a `GradleConnector` concurrently you *must* always create a new instance for each thread using newConnector(). Note, however, the ProjectConnection instances that a connector creates are completely thread-safe.

Method Summary
`ProjectConnection` | `connect()` Creates a connection to the project in the specified project directory.
`GradleConnector` | `forProjectDirectory(File projectDir)` Specifies the working directory to use.
`static GradleConnector` | `newConnector()` Creates a new connector instance.
`GradleConnector` | `useDistribution(URI gradleDistribution)` Specifies which Gradle distribution to use.
`GradleConnector` | `useGradleUserHomeDir(File gradleUserHomeDir)` Specifies the user's Gradle home directory to use.
`GradleConnector` | `useGradleVersion(String gradleVersion)` Specifies which Gradle version to use.
`GradleConnector` | `useInstallation(File gradleHome)` Specifies which Gradle installation to use.

Methods inherited from class Object
wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll

Method Detail

### connect

    public ProjectConnection connect()

  Creates a connection to the project in the specified project directory. You should call ProjectConnection.close when you are finished with the connection.
  throws:
    UnsupportedVersionException When the target Gradle version does not support this version of the tooling API.
  throws:
    GradleConnectionException On failure to establish a connection with the target Gradle version.
  Returns:
    The connection. Never return null.

### forProjectDirectory

    public GradleConnector forProjectDirectory(File projectDir)

  Specifies the working directory to use.
  Parameters:
    `projectDir` - The working directory.
  Returns:
    this

### newConnector

    public static GradleConnector newConnector()

  Creates a new connector instance.
  Returns:
    The instance. Never returns null.

### useDistribution

    public GradleConnector useDistribution(URI gradleDistribution)

  Specifies which Gradle distribution to use. The appropriate distribution is downloaded and installed into the user's Gradle home directory. This replaces any value specified using useInstallation(java.io.File) or useGradleVersion(String). Defaults to a project-specific Gradle version.
  Parameters:
    `gradleDistribution` - The distribution to use.
  Returns:
    this

### useGradleUserHomeDir

    public GradleConnector useGradleUserHomeDir(File gradleUserHomeDir)

  Specifies the user's Gradle home directory to use. Defaults to `~/.gradle`.
  Parameters:
    `gradleUserHomeDir` - The user's Gradle home directory to use.
  Returns:
    this

### useGradleVersion

    public GradleConnector useGradleVersion(String gradleVersion)

  Specifies which Gradle version to use. The appropriate distribution is downloaded and installed into the user's Gradle home directory. This replaces any value specified using useInstallation(java.io.File) or useDistribution(java.net.URI). Defaults to a project-specific Gradle version.
  Parameters:
    `gradleVersion` - The version to use.
  Returns:
    this

### useInstallation

    public GradleConnector useInstallation(File gradleHome)

  Specifies which Gradle installation to use. This replaces any value specified using useDistribution(java.net.URI) or useGradleVersion(String). Defaults to a project-specific Gradle version.
  Parameters:
    `gradleHome` - The Gradle installation directory.
  Returns:
    this

Gradle API 1.1-rc-1