# Compatibility Matrix

version 9.0.0

The sections below describe Gradle’s compatibility with several integrations. Versions not listed here may or may not work.

## Java Runtime

Gradle runs on the Java Virtual Machine (JVM), which is often provided by either a JDK or JRE. A JVM version between 17 and 24 is required to execute Gradle. JVM 25 and later versions are not yet supported.

The Gradle wrapper, Gradle client, Tooling API client, and TestKit client are compatible with JVM 8.

JDK 6 and above can be used for compilation. JVM 8 and above can be used for executing tests.

Any fully supported version of Java can be used for compilation or testing. However, the latest Java version may only be supported for compilation or testing, not for running Gradle. Support is achieved using toolchains and applies to all tasks supporting toolchains.

See the table below for the Java version supported by a specific Gradle release:

Table 1. Java Compatibility
Java version | Support for toolchains | Support for running Gradle
--- | --- | ---
8 | N/A | 2.0 to 8.14.*
9 | N/A | 4.3 to 8.14.*
10 | N/A | 4.7 to 8.14.*
11 | N/A | 5.0 to 8.14.*
12 | N/A | 5.4 to 8.14.*
13 | N/A | 6.0 to 8.14.*
14 | N/A | 6.3 to 8.14.*
15 | 6.7 | 6.7 to 8.14.*
16 | 7.0 | 7.0 to 8.14.*
17 | 7.3 | 7.3 and after
18 | 7.5 | 7.5 and after
19 | 7.6 | 7.6 and after
20 | 8.1 | 8.3 and after
21 | 8.4 | 8.5 and after
22 | 8.7 | 8.8 and after
23 | 8.10 | 8.10 and after
24 | 8.14 | 8.14 and after
25 | N/A | N/A

| We only list versions in the table above once we have tested that they work without any warnings. However, thanks to the toolchain support, Gradle will often work with the latest Java version before then. We encourage users to try it out and let us know.

## Kotlin

Gradle is tested with Kotlin 2.0.0 through 2.2.0. Beta and RC versions may or may not work.

Table 2. Embedded Kotlin version
Embedded Kotlin version | Minimum Gradle version | Kotlin Language version
--- | --- | ---
1.3.10 | 5.0 | 1.3
1.3.11 | 5.1 | 1.3
1.3.20 | 5.2 | 1.3
1.3.21 | 5.3 | 1.3
1.3.31 | 5.5 | 1.3
1.3.41 | 5.6 | 1.3
1.3.50 | 6.0 | 1.3
1.3.61 | 6.1 | 1.3
1.3.70 | 6.3 | 1.3
1.3.71 | 6.4 | 1.3
1.3.72 | 6.5 | 1.3
1.4.20 | 6.8 | 1.3
1.4.31 | 7.0 | 1.4
1.5.21 | 7.2 | 1.4
1.5.31 | 7.3 | 1.4
1.6.21 | 7.5 | 1.4
1.7.10 | 7.6 | 1.4
1.8.10 | 8.0 | 1.8
1.8.20 | 8.2 | 1.8
1.9.0 | 8.3 | 1.8
1.9.10 | 8.4 | 1.8
1.9.20 | 8.5 | 1.8
1.9.22 | 8.7 | 1.8
1.9.23 | 8.9 | 1.8
1.9.24 | 8.10 | 1.8
2.0.20 | 8.11 | 1.8
2.0.21 | 8.12 | 1.8
2.2.0 | 9.0 | 2.2

## Groovy

Gradle is tested with Groovy 1.5.8 through 4.0.27.

Gradle plugins written in Groovy must use Groovy 4.x for compatibility with Gradle and Groovy DSL build scripts.

## Android

Gradle is tested with Android Gradle Plugin 8.4 through 8.11. Alpha and beta versions may or may not work.

## Target Platforms

Gradle supports a defined set of platform targets, which are combinations of:

- Operating system and version

- Architecture

- File system watching compatibility

The following table lists the officially supported platforms for Gradle:

Table 3. Supported Platforms
OS | Architecture
--- | ---
Ubuntu 22 | `amd64`
Windows 10 | `amd64`
macOS 12 | `amd64`
| `aarch64`
Ubuntu 16 | `amd64`
| `aarch64`
Alpine 3.20 | `amd64`
CentOS 9 | `amd64`

| Currently, all Gradle tests run with the default file-systems of the platform, i.e. `ext4` for Ubuntu, Amazon Linux and CentOS, `NTFS` for Windows, and `APFS` for macOS.

Platforms not listed above may work with Gradle but are not actively tested.