R8 के चलने का तरीका कॉन्फ़िगर करना

सेटिंग प्लगिन की मदद से, R8 टूल के लिए एक्ज़ीक्यूशन प्रोफ़ाइलें बनाई जा सकती हैं. इससे यह कॉन्फ़िगर किया जा सकता है कि R8 कैसे काम करे, ताकि आपकी बिल्ड प्रोसेस धीमी न हो. एनवायरमेंट के हिसाब से, प्रोफ़ाइलों का इस्तेमाल करके R8 को अलग JVM प्रोसेस में चलाया जा सकता है. साथ ही, JVM आर्ग्युमेंट सेट किए जा सकते हैं. जैसे, ज़्यादा से ज़्यादा हीप साइज़.

एक्ज़ीक्यूशन प्रोफ़ाइल के बारे में जानकारी देना

सेटिंग प्लगिन लागू करें. इसके बाद, android ब्लॉक को settings.gradle फ़ाइल में जोड़ें. इस ब्लॉक में, अलग-अलग प्रोफ़ाइलें तय की जा सकती हैं. इसके बाद, किसी प्रोफ़ाइल को डिफ़ॉल्ट के तौर पर सेट किया जा सकता है. इसका उदाहरण यहां दिया गया है:

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

डिफ़ॉल्ट प्रोफ़ाइल को बदलना

मौजूदा डिफ़ॉल्ट एक्ज़ीक्यूशन प्रोफ़ाइल को बदलने के लिए, gradle.properties फ़ाइल में यह प्रॉपर्टी जोड़ें.

android.settings.executionProfile=example-profile