问题
I am using android studio 1.0 RC for 64 bit linux.
When I run my application I am getting
"java.lang.OutOfMemoryError: GC overhead limit exceeded"
When I searched on how to solve this error I got solutions like add:
- -XX:-UseGCOverheadLimit to studio.vmoptions or studio64.vmoptions
- -Xmx2000m to studio.vmoptions or studio64.vmoptions etc.
These did not work for me.
Please help. Thanks in advance
回答1:
I solved this issue by adding
dexOptions {
incremental true
javaMaxHeapSize "4g"
}
to the android closure in build.gradle file. Found this answer in
OutOfMemoryError: GC overhead limit exceeded
回答2:
Add this to your "gradle.properties" file:
org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=4096m -XX:+HeapDumpOnOutOfMemoryError
Also, read this article. You might be able to make the building a bit faster, by adding a combination of those:
org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.configureondemand=true
EDIT: an updated answer based on my experience:
On Android Studio, choose Help -> Edit custom VM options , and then set the max memory the IDE is allowed to use. For example, if you want 5GB, use this:
-Xmx5g
Save the file, close all windows of the IDE (make sure it has no processes) and then restart the IDE.
回答3:
Add this line in your build.gradle
dexOptions
{
incremental false
javaMaxHeapSize "2048M"
preDexLibraries = false
}
回答4:
I had the same issue too - mine was for a different reason. I was working on backing up some files and accidentally dropped a big file in the resource folder. It was close to 40MB.
Once this file was removed, the error was gone.
回答5:
I also have this problem
my solution is :
Just modify the gradle.properties in the root of your project :
org.gradle.jvmargs=-XX\:MaxHeapSize\=512m -Xmx512m
the default jvmargs is 256 when you compile a lot of channel apk then will cause this problem !
来源:https://stackoverflow.com/questions/27164452/how-to-solve-java-lang-outofmemoryerror-gc-overhead-limit-exceeded-error-in-and