# Package org.gradle.platform.base

## Package org.gradle.platform.base Description

General purpose types for runtime support. @org.gradle.api.Incubating

- Interface Summary
  Interface | Description
  --- | ---
  Application | A software application.
  ApplicationBinarySpec | A binary produced from a `ApplicationSpec`.
  ApplicationSpec | A specification of a Application.
  Binary | A physical binary artifact, which can run on a particular platform or runtime.
  BinaryContainer | A container for project binaries, which represent physical artifacts that can run on a particular platform or runtime.
  BinarySpec | Represents a binary that is the result of building a component.
  BinaryTasksCollection | A collection of tasks associated to a binary
  ComponentSpec | A software component that is built by Gradle.
  ComponentSpecContainer | A container of software components.
  DependencySpec | A dependency onto a Gradle component.
  DependencySpecBuilder | A builder of a DependencySpec.
  DependencySpecContainer | A container for dependency specifications.
  GeneralComponentSpec | A general purpose component specification, that can be used to represent some software component built from source and producing multiple output variants.
  Library | A library that can be linked into or depended on by another software element.
  LibraryBinaryDependencySpec | A dependency onto a specific binary of a library published by a project.
  LibraryBinarySpec | A binary produced from a `LibrarySpec`.
  LibrarySpec | A specification of a Library.
  ModuleDependencySpec | A dependency onto a module.
  ModuleDependencySpecBuilder | A builder of a ModuleDependencySpec.
  Platform | The platform or runtime that a binary is designed to run on.
  PlatformAwareComponentSpec | Defines Platform specific operations for ComponentSpecs
  PlatformContainer | A container of Platforms.
  ProjectDependencySpec | A dependency onto a library published by a project.
  ProjectDependencySpecBuilder | A builder of a ProjectDependencySpec.
  SourceComponentSpec | Represents some component whose implementation can be represented as a collection of source files, and whose other outputs are built from this source.
  ToolChain | A set of compilers that are used together to construct binaries.
  ToolChainRegistry | A Provider of ToolChains.
  TransformationFileType | The type of a file of a transformation
  TypeBuilder | A TypeBuilder to configure the registration of a type.
  VariantComponentSpec | Represents a component that is made up of one or more mutually exclusive components.

- Exception Summary
  Exception | Description
  --- | ---
  InvalidModelException | Thrown when a component model is declared in an invalid way.
  ModelInstantiationException | Thrown when a model element cannot be instantiated for some reason.

- Annotation Type Summary
  Annotation Type | Description
  --- | ---
  BinaryTasks | Declares the tasks to build a custom BinarySpec binary.
  BinaryType | No longer supported.
  ComponentBinaries | Declares the binaries that should be built for a custom ComponentSpec type.
  ComponentType | Declares a custom ComponentSpec type.
  LanguageType | No longer supported.
  Variant | Declares that a property represents a variant dimension.