문제 발생
최근에 Android Gradle 플러그인 버전을 3.0.1 -> 3.5.1로 업데이트하면서, 아래와 같이 "JVM 힙 메모리 부족" 빌드 에러가 발생하였습니다.
Expiring Daemon because JVM heap space is exhausted
Daemon will be stopped at the end of the build after running out of JVM memory
Expiring Daemon because JVM heap space is exhausted
Expiring Daemon because JVM heap space is exhausted
Expiring Daemon because JVM heap space is exhausted....
Exception in thread "Thread-33" java.lang.OutOfMemoryError: Java heap space
> Task :app:compileGoogleDebugJavaWithJavac FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:compileGoogleDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at
https://help.gradle.org
문제 해결
해당 이슈는, 프로젝트에 구성된 최대 힙 메모리 크기를 늘려서 해결할 수가 있기 때문에, 힙 메모리 크기 설정을 해주도록 하겠습니다.
해결방법으로는 크게 두 가지로, 소스코드에 직접 입력하는 방법과, GUI를 이용해 간편하게 설정하는 방법이 있습니다.
이중에 저는 GUI를 이용한 방법으로 해결을 하였습니다.
(첫번째 방법) 소스코드를 직접 입력하여 설정하기
스택오버플로우에 답변된 해결방법으로, 아래와 같이 gradle.properties(프로젝트 수준)와 build.gradle(앱 수준)에 아래 소스코드를 추가해주는 방법이 있고,
// gradle.properties 에 아래내용 추가
org.gradle.daemon=true
org.gradle.configureondemand=true
org.gradle.jvmargs=-Xmx4g -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
// app/build.gradle 에 아래내용 추가
android {
dexOptions {
javaMaxHeapSize "4g"
}
}
(추천 방법) GUI 이용하기
제가 해결했던 방법으로, 안드로이드 스튜디오 IDE 설정 GUI를 통해 간편하게 해결할 수 있는 방법입니다.
Preferences > System Setting > Memory Settings에서 IDE max heap size, Gradle daemon max heap size, Kotlin daemon max heap size(코틀린 사용 시에만 설정 )의 사이즈 값을 설정해주도록 합니다.
위와 같이, 사이즈 설정 후에 다시 빌드하시면 에러 없이 정상적으로 빌드가 되는 것을 확인할 수 있습니다! ^^
'문제 해결' 카테고리의 다른 글
AAC ViewModel 생성자 파라미터 넘기기, Cannot create an instance of class ViewModel 해결 방법 (4) | 2020.03.26 |
---|---|
Cannot fit requested classes in a single dex file. 해결 방법 (0) | 2020.03.11 |
Two-way binding cannot resolve a setter for ... 해결 방법 (0) | 2020.02.25 |
기기 및 네트워크 악용 정책 위반 : 구글 플레이 스토어 앱 거부 해결 방법 (0) | 2020.01.31 |
HAXM installation failed - 안드로이드 스튜디오 AVD HAXM 설치 에러 해결방법 (6) | 2020.01.01 |