R8 실행 방식 구성

설정 플러그인을 사용하면 R8 도구의 실행 프로필을 만들어 R8이 빌드 속도를 늦추지 않도록 실행 방식을 구성할 수 있습니다. 환경에 따라 프로필을 사용하여 별도의 JVM 프로세스에서 R8을 실행하고 최대 힙 크기와 같은 JVM 인수를 설정할 수 있습니다.

실행 프로필 선언

설정 플러그인을 적용한 다음 settings.gradle 파일에 android 블록을 추가합니다. 이 블록에서 다양한 프로필을 정의한 다음 다음 예와 같이 기본값을 설정할 수 있습니다.

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