0

아주 좋은 구성의 8 GB RAM과 많은 여유 공간이있는 데스크탑 컴퓨터를 사용하고 있습니다. Error : java.lang.OutOfMemoryError : GC 오버 헤드 한도를 초과했습니다. Android Studio

이 오류를 나에게 모든 시간을주고 내 장치 안드로이드 스튜디오에서 응용 프로그램을 실행하는 동안

,

Error:java.lang.OutOfMemoryError: GC overhead limit exceeded 

Error:Execution failed for task ':app:transformClassesWithDexForDebug'. 
com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException 

내 studio64.exe.vmoptions는

-Xms256m 

-Xmx1024m 

-XX:MaxPermSize=350m 

-XX:ReservedCodeCacheSize=240m 

-XX:+UseConcMarkSweepGC 

-XX:SoftRefLRUPolicyMSPerMB=50 

-da 

-Djna.nosys=true 

-Djna.boot.library.path= 

-Djna.debug_load=true 

-Djna.debug_load.jna=true 

-Dsun.io.useCanonCaches=false 

-Djava.net.preferIPv4Stack=true 

-Didea.paths.selector=AndroidStudio2.2 

-Didea.platform.prefix=AndroidStudio 

-Didea.jre.check=true 

은 알려 주시기 바랍니다 파일. 나는 즉시 실행 기능도 사용 중지했다.

+0

-Xmx 설정을 -Xmx1024m에서 높은 값 (예 : -Xmx2048m)으로 변경하십시오. -Xmx는 메모리 할당 풀의 최대 크기 (바이트)를 지정합니다. –

+0

[Error java.lang.OutOfMemoryError : GC 오버 헤드 한도 초과] 가능한 복제본 (http://stackoverflow.com/questions/1393486/error-java-lang-outofmemoryerror-gc-overhead-limit-exceeded) –

답변

1

다음 행을 build.gradle 파일에 추가하기 만하면됩니다.

dexOptions { 
     javaMaxHeapSize "4g" 
} 

이 정보가 도움이되기를 바랍니다.

0

을 선택하면 CMS 가비지 수집은 JVM "새 공간"의 크기 조정에 나쁜 영향을줍니다. 그 공간이 너무 작 으면 끊임없이 (젊은 세대의) GC를 보게되어 문제를 일으킬 수 있습니다.

예를 들면,

/usr/bin/java -Xms4096m -Xmx4096m -XX:+PrintGCDetails -XX:+UseConcMarkSweepGC -version 

보고서 총 4기가바이트 힙 크기에도 불구하고 "새로운 공간"단지 160메가바이트. 이것은 JVM 1.7.0_75를 사용하여 2 코어 시스템 (코어 수가 증가할수록)에있었습니다.

비슷한 명령을 사용하여 결과를 확인하십시오. - 라인 par new generation total ...K을 찾으십시오. 숫자가 매우 낮게 나타나면 문제의 근본 원인이됩니다.

그런 다음 옵션을 추가하여이 문제를 해결할 수있는 명시 적으로 ...

  • 이 3 분의 1 "새로운 공간"에 상한에 대한 표준 dimensionsing 규칙을 적용 -XX:NewRatio=2 -XX:NewSize=512m, 사용 가능한 힙 공간
  • 는 512m

I에 최소 "새로운 공간"크기를 설정 일반적으로 GC 설정을 조정할 때는 매우 신중해야합니다 (예 : -XX:+UseConcMarkSweepGC).이 옵션을 선택하지 않으면 첫 번째 위치에 잘못된 치수가 표시되지 않습니다.

관련 문제