@NonNullApi

# Package org.gradle.jvm.toolchain

Defines tools that can build things that run on the JVM.

- Interface Summary
  Interface | Description
  --- | ---
  JavaCompiler | A java compiler used by compile tasks.
  JavadocTool | Generates HTML API documentation for Java classes.
  JavaInstallationMetadata | Metadata about a Java tool obtained from a toolchain.
  JavaLanguageVersion | Represents a Java Language version
  JavaLauncher | A java executable used to execute applications or run tests.
  JavaToolchainDownload | The response provided by a `JavaToolchainResolver` to a specific `JavaToolchainRequest`.
  JavaToolchainRepository | Named configuration of `JavaToolchainResolver` implementations, identified by their implementation class.
  JavaToolchainRepositoryHandler | `NamedDomainObjectList` based handler for configuring an ordered collection of `JavaToolchainRepository` implementations.
  JavaToolchainRequest | Describes Java toolchains that need to be auto-provisioned, including their properties (see `JavaToolchainSpec`} and the build environment they are needed in.
  JavaToolchainResolver | Interface that needs to be implemented by Java toolchain provisioning plugins.
  JavaToolchainResolverRegistry | The build level object/service provided by Gradle which Java toolchain provisioning plugins can access to register their `JavaToolchainResolver` implementations/build services into.
  JavaToolchainService | Allows to query for toolchain managed tools, like `JavaCompiler`, `JavaLauncher` and `JavadocTool`.
  JavaToolchainSpec | Requirements for selecting a Java toolchain.
  JvmToolchainManagement | Dynamic extension added to `ToolchainManagement` at runtime, by the `jvm-toolchain-management` plugin.

- Class Summary
  Class | Description
  --- | ---
  JvmImplementation | Represents a filter for a implementation of a Java Virtual Machine.
  JvmVendorSpec | Represents a filter for a vendor of a Java Virtual Machine implementation.