# Interface BuildEnvironment

All Superinterfaces:
  `BuildModel, Model`

public interface BuildEnvironment extends Model, BuildModel
Informs about the build environment, like Gradle version or the Java home in use.

Example:

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

    try {
       BuildEnvironment env = connection.getModel(BuildEnvironment.class);
       System.out.println("Gradle version: " + env.getGradle().getGradleVersion());
       System.out.println("Java home: " + env.getJava().getJavaHome());
    } finally {
       connection.close();
    }

Since:
  1.0-milestone-8

## Method Summary

Modifier and Type
Method
Description
`BuildIdentifier`
`getBuildIdentifier()`
Returns the identifier for the Gradle build that this environment is used by.
`GradleEnvironment`
`getGradle()`
Returns information about the Gradle environment, for example the Gradle version.
`JavaEnvironment`
`getJava()`
Returns information about the Java environment, for example the Java home or the JVM args used.

## Method Details

### getBuildIdentifier

@Incubating BuildIdentifier getBuildIdentifier()
Returns the identifier for the Gradle build that this environment is used by.

Specified by:
  `getBuildIdentifier` in interface `BuildModel`
Since:
  2.13

### getGradle

GradleEnvironment getGradle()
Returns information about the Gradle environment, for example the Gradle version.

Since:
  1.0-milestone-8

### getJava

JavaEnvironment getJava() throws UnsupportedMethodException
Returns information about the Java environment, for example the Java home or the JVM args used.

Throws:
  `UnsupportedMethodException` - For Gradle versions older than 1.0-milestone-8, where this method is not supported.
Since:
  1.0-milestone-8