fix: raise Gradle daemon heap/Metaspace for the Android (AGP) build

The Android target added in #48 brought AGP onto the build's classpath
without setting org.gradle.jvmargs, so the Gradle daemon ran on its
defaults (512m heap / 384m Metaspace). AGP loads enough classes that,
combined with the KMP matrix, binary-compatibility-validator, Kover and
Dokka in a single build, the daemon exhausts Metaspace and is killed
mid-build (GC thrashing / out of Metaspace). The
'JVM / JS / Wasm / Native / Android + API check' job therefore failed
deterministically on master, and the publish job builds the same targets.

Set org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g. Verified with a
cold full-matrix build locally.
This commit is contained in:
2026-06-08 21:58:23 +02:00
parent dc59476b10
commit 28c1690f96

View File

@@ -4,3 +4,7 @@ org.jetbrains.dokka.experimental.gradle.pluginMode=V2Enabled
org.jetbrains.dokka.experimental.gradle.pluginMode.noWarn=true
# Android: Compose pulls AndroidX artifacts, which AGP requires this flag to consume.
android.useAndroidX=true
# AGP loads many classes into the Gradle daemon's Metaspace; combined with the KMP
# matrix, binary-compatibility-validator, Kover and Dokka in a single build, the
# default 512m heap / 384m Metaspace is exhausted (daemon OOM). Raise both.
org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g -Dfile.encoding=UTF-8