# Interface JavaInstallationMetadata

public interface JavaInstallationMetadata
Metadata about a Java tool obtained from a toolchain.

Since:
  6.7
See Also:
  - `JavaLauncher`
  - `JavaCompiler`
  - `JavadocTool`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Directory`
  `getInstallationPath()`
  The path to installation this tool belongs to.
  `String`
  `getJavaRuntimeVersion()`
  Returns the full Java version (including the build number) of the JVM, as specified in its `java.runtime.version` property.
  `String`
  `getJvmVersion()`
  Returns the version of the JVM, as specified in its `java.vm.version` property.
  `JavaLanguageVersion`
  `getLanguageVersion()`
  Returns the language version of the JVM to which this tool belongs
  `String`
  `getVendor()`
  Returns a human-readable string for the vendor of the JVM.
  `boolean`
  `isCurrentJvm()`
  Returns true if this installation corresponds to the build JVM.

- ## Method Details

  - ### getLanguageVersion

    @Input JavaLanguageVersion getLanguageVersion()
    Returns the language version of the JVM to which this tool belongs
    Returns:
      the `JavaLanguageVersion`
    Since:
      6.7

  - ### getJavaRuntimeVersion

    @Internal String getJavaRuntimeVersion()
    Returns the full Java version (including the build number) of the JVM, as specified in its `java.runtime.version` property.
    Returns:
      the full Java version of the JVM
    Since:
      7.1

  - ### getJvmVersion

    @Internal String getJvmVersion()
    Returns the version of the JVM, as specified in its `java.vm.version` property.
    Returns:
      the version of the JVM
    Since:
      7.1

  - ### getVendor

    @Internal String getVendor()
    Returns a human-readable string for the vendor of the JVM.
    Returns:
      the vendor
    Since:
      6.8

  - ### getInstallationPath

    @Internal Directory getInstallationPath()
    The path to installation this tool belongs to.

    This value matches what would be the content of `JAVA_HOME` for the given installation.

    Returns:
      the installation path
    Since:
      6.7

  - ### isCurrentJvm

    @Internal @Incubating boolean isCurrentJvm()
    Returns true if this installation corresponds to the build JVM.
    Since:
      8.0