# UpdateDaemonJvm

API Documentation: | `UpdateDaemonJvm`

Generates or updates the Gradle Daemon JVM criteria. This controls the version of the JVM required to run the Gradle Daemon.

### Properties

Property | Description
`languageVersion` | The version of the JVM required to run the Gradle Daemon.
`toolchainDownloadUrls` | The download URLs for the toolchains for the given platforms.
`toolchainPlatforms` | The set of `BuildPlatform` for which download links should be generated.
`vendor` | Configures the vendor spec for the daemon toolchain properties generation.

### Methods

No methods

### Script blocks

No script blocks

### Property details

#### ``Property`<`JavaLanguageVersion`>` `languageVersion`

The version of the JVM required to run the Gradle Daemon.

By convention, for the task created on the root project, Gradle will use the JVM version of the current JVM.

Default:
  defaults to current JVM version

#### ``MapProperty`<`BuildPlatform`, `URI`>` `toolchainDownloadUrls`

The download URLs for the toolchains for the given platforms.

By convention, for the task created on the root project, Gradle will combine the `UpdateDaemonJvm.getToolchainPlatforms()`, `UpdateDaemonJvm.getLanguageVersion()` and `UpdateDaemonJvm.getVendor()` to resolve download URLs using the configured `JavaToolchainRepository`.

If the convention applies and no toolchain repositories are defined, an exception will be thrown.

Default:
  defaults to using the toolchain repositories to resolve the platforms configured in `toolchainPlatforms`

#### ``SetProperty`<`BuildPlatform`>` `toolchainPlatforms`

The set of `BuildPlatform` for which download links should be generated.

By convention, for the task created on the root project, Gradle sources those from the combination of all supported `OperatingSystem` and the following architectures: `Architecture.X86_64` and `Architecture.AARCH64`.

Default:
  defaults to the combination of `aarch64` and `x86_64` architectures with the following operating systems: `Linux`, `MacOS`, `Windows`, `FreeBSD`, `Solaris` and `Unix`

#### ``Property`<`JvmVendorSpec`>` `vendor`

Configures the vendor spec for the daemon toolchain properties generation.

Default:
  defaults to allowing any JVM vendor