Configurer l'exécution de R8

Le plug-in de paramètres vous permet de créer des profils d'exécution pour l'outil R8, ce qui vous permet de configurer la façon dont R8 s'exécute afin de ne pas ralentir votre compilation. Selon l'environnement, vous pouvez utiliser des profils pour exécuter R8 dans un processus JVM distinct et définir des arguments JVM, tels que la taille maximale du tas de mémoire.

Déclarer un profil d'exécution

Appliquez le plug-in de paramètres, puis ajoutez le bloc android au fichier settings.gradle. Dans ce bloc, vous pouvez définir différents profils, puis en définir un par défaut, comme indiqué dans l'exemple suivant :

Kotlin

android {
    execution {
        profiles {
            create("server") {
                r8 {
                    runInSeparateProcess = true
                    jvmOptions += listOf("-Xms2048m", "-Xmx8192m", "-XX:+HeapDumpOnOutOfMemoryError")
                }
            }
            create("local") {
                r8 {
                    runInSeparateProcess = true
                    jvmOptions += listOf("-Xms256m", "-Xmx2048m", "-XX:+HeapDumpOnOutOfMemoryError")
                }
            }
            defaultProfile = "server"
        }
    }
}

Groovy

android {
    execution {
        profiles {
            register("server") {
                r8 {
                    runInSeparateProcess = true
                    jvmOptions += ["-Xms2048m", "-Xmx8192m", "-XX:+HeapDumpOnOutOfMemoryError"]
                }
            }
            register("local") {
                r8 {
                    runInSeparateProcess = true
                    jvmOptions += ["-Xms256m", "-Xmx2048m", "-XX:+HeapDumpOnOutOfMemoryError"]
                }
            }
            defaultProfile = "server"
        }
    }
}

Remplacer le profil par défaut

Pour remplacer le profil d'exécution par défaut actuel, ajoutez la propriété suivante au fichier gradle.properties.

android.settings.executionProfile=example-profile