Mengonfigurasi cara R8 berjalan

Plugin setelan memungkinkan Anda membuat profil eksekusi untuk alat R8, sehingga Anda dapat mengonfigurasi cara R8 berjalan agar tidak memperlambat build. Bergantung pada lingkungan, Anda dapat menggunakan profil untuk menjalankan R8 dalam proses JVM terpisah dan menetapkan argumen JVM, seperti ukuran heap maksimum.

Mendeklarasikan profil eksekusi

Terapkan plugin setelan, lalu tambahkan blok android ke file settings.gradle. Dalam blok ini, Anda dapat menentukan profil yang berbeda dan kemudian menetapkan default, seperti yang ditunjukkan dalam contoh berikut:

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"
        }
    }
}

Mengganti profil default

Untuk mengganti profil eksekusi default saat ini, tambahkan properti berikut ke file gradle.properties.

android.settings.executionProfile=example-profile