# Compatibility Matrix

version 9.8.0-milestone-2

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 27 is required to execute Gradle. JVM 28 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.x
9 | N/A | 4.3 to 8.14.x
10 | N/A | 4.7 to 8.14.x
11 | N/A | 5.0 to 8.14.x
12 | N/A | 5.4 to 8.14.x
13 | N/A | 6.0 to 8.14.x
14 | N/A | 6.3 to 8.14.x
15 | 6.7 | 6.7 to 8.14.x
16 | 7.0 | 7.0 to 8.14.x
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 | 9.1.0 | 9.1.0 and after
26 | 9.4.0 | 9.4.0 and after
27 | 9.8.0 | 9.8.0 and after

| 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.4.20-Beta1. 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.0 | 2.2
2.2.20 | 9.2.0 | 2.2
2.2.21 | 9.3.0 | 2.2
2.3.0 | 9.4.0 | 2.2
2.3.20 | 9.5.0 | 2.2
2.3.21 | 9.6.0 | 2.2
2.4.0 | 9.7.0 | 2.2
2.4.10 | 9.8.0 | 2.2

## Groovy

Gradle is tested with Groovy 1.5.8 through 6.0.0-alpha-2.

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 9.0 through 9.4.0-alpha08. 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
--- | ---
Windows 10 | `AMD64`
Windows 11 | `AMD64`, `AArch64`
Ubuntu 22 | `AMD64`, `AArch64`
macOS 13+ | `AMD64`, `AArch64`
Alpine 3.20 | `AMD64`
CentOS Stream 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.