# Package org.gradle.tooling.model

package org.gradle.tooling.model
The general-purpose tooling model types, provided by the tooling API.

- Related Packages
  Package
  Description
  org.gradle.tooling
  The main interfaces and classes of the Gradle tooling API.
  org.gradle.tooling.model.build
  Tooling models for the build environment, which includes information such as Gradle or Java versions.
  org.gradle.tooling.model.cpp
  Types that represent the tooling model for C++ projects.
  org.gradle.tooling.model.eclipse
  Eclipse-centric tooling models.
  org.gradle.tooling.model.gradle
  The tooling models for Gradle builds and projects.
  org.gradle.tooling.model.idea
  IntelliJ IDEA centric tooling models.
  org.gradle.tooling.model.java
  Java-specific details for tooling models.
- Class
  Description
  BuildableElement
  Represents an element which has Gradle tasks associated with it.
  BuildIdentifier
  Identifies a Gradle build.
  BuildModel
  Represents a model that is associated with or represents some Gradle build.
  ComponentSelector
  Represents a component selector.
  Dependency
  Represents an artifact dependency.
  DomainObjectSet<T>
  A set of domain objects of type T.
  Element
  Described model element.
  ExternalDependency
  Represents an external artifact dependency.
  GradleModuleVersion
  Informs about a module version, i.e.
  GradleProject
  Represents a Gradle project.
  GradleTask
  Represents a task which is executable by Gradle.
  HasGradleProject
  An element that is associated with a Gradle project.
  HierarchicalElement
  Represents an element which belongs to some hierarchy.
  Launchable
  Represents an object that can be used to launch a Gradle build, such as a task.
  Model
  A model that is buildable by the Tooling API.
  ProjectDependency
  Represents a dependency on another project.
  ProjectIdentifier
  Identifies a Gradle project.
  ProjectModel
  Represents a model that is associated with some Gradle project.
  SourceDirectory
  Represents a source directory.
  Task
  Represents a task which is executable by Gradle.
  TaskSelector
  Represents a `Launchable` that uses task name to select tasks executed from a given project and its sub-projects.
  UnsupportedMethodException
  Thrown when the tooling API client attempts to use a method that does not exist in the version of Gradle that the tooling API is connected to.