6

I am trying to build my project but get the following error. cannot load api descriptions from C:\Users\X512\AppData\Local\Android\Sdk\platform-tools\api\api-versions.xml java.lang.OutOfMemoryError: GC overhead limit exceeded

cannot load api descriptions from C:\Users\X512\AppData\Local\Android\Sdk\platform-tools\api\api-versions.xml java.lang.OutOfMemoryError: GC overhead limit exceeded
    at com.sun.org.apache.xerces.internal.dom.DeferredDocumentImpl.getNodeObject(DeferredDocumentImpl.java:974)
    at com.sun.org.apache.xerces.internal.dom.DeferredElementImpl.synchronizeData(DeferredElementImpl.java:121)
    at com.sun.org.apache.xerces.internal.dom.ElementImpl.getNodeName(ElementImpl.java:122)
    at android.databinding.tool.reflection.SdkUtil$ApiChecker.buildFullLookup(SdkUtil.java:149)
    at android.databinding.tool.reflection.SdkUtil$ApiChecker.<init>(SdkUtil.java:124)
    at android.databinding.tool.reflection.SdkUtil.create(SdkUtil.java:56)
    at android.databinding.tool.Context.init(Context.kt:50)
    at android.databinding.annotationprocessor.ProcessDataBinding.doProcess(ProcessDataBinding.java:110)
    at android.databinding.annotationprocessor.ProcessDataBinding.process(ProcessDataBinding.java:88)
    at org.gradle.api.internal.tasks.compile.processing.DelegatingProcessor.process(DelegatingProcessor.java:62)
    at org.gradle.api.internal.tasks.compile.processing.DynamicProcessor.process(DynamicProcessor.java:52)
    at org.gradle.api.internal.tasks.compile.processing.DelegatingProcessor.process(DelegatingProcessor.java:62)
    at org.gradle.api.internal.tasks.compile.processing.TimeTrackingProcessor.access$401(TimeTrackingProcessor.java:37)
    at org.gradle.api.internal.tasks.compile.processing.TimeTrackingProcessor$5.create(TimeTrackingProcessor.java:99)
    at org.gradle.api.internal.tasks.compile.processing.TimeTrackingProcessor$5.create(TimeTrackingProcessor.java:96)
    at org.gradle.api.internal.tasks.compile.processing.TimeTrackingProcessor.track(TimeTrackingProcessor.java:117)
    at org.gradle.api.internal.tasks.compile.processing.TimeTrackingProcessor.process(TimeTrackingProcessor.java:96)
    at com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEnvironment.java:802)
    at com.sun.tools.javac.processing.JavacProcessingEnvironment.access$200(JavacProcessingEnvironment.java:91)
    at com.sun.tools.javac.processing.JavacProcessingEnvironment$DiscoveredProcessors$ProcessorStateIterator.runContributingProcs(JavacProcessingEnvironment.java:635)
    at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1041)
    at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1206)
    at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1170)
    at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:856)
    at com.sun.tools.javac.main.Main.compile(Main.java:523)
    at com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:129)
    at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:138)
    at org.gradle.api.internal.tasks.compile.AnnotationProcessingCompileTask.call(AnnotationProcessingCompileTask.java:93)
    at org.gradle.api.internal.tasks.compile.ResourceCleaningCompilationTask.call(ResourceCleaningCompilationTask.java:57)
    at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:54)
    at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:39)
    at org.gradle.api.internal.tasks.compile.daemon.AbstractDaemonCompiler$CompilerWorkAction.execute(AbstractDaemonCompiler.java:113)

As far as I understood GC overhead limit exceeded means java VM is spending more time on garbage collection rather than doing useful work.

So I tried all the provided solutions here and here. But nothing is working in my case.

I am stuck here for three days. Really appreciate if someone could give me a guidance.

udi
  • 3,672
  • 2
  • 12
  • 33
  • did you already solve this? – mochadwi Jul 29 '21 at 04:43
  • 5
    @mochadwi - Are you running into this issue now? It just recently started for me. It appears that the latest version of platform-tools (31.0.3) removes the api/api-versions.xml file. The only way I've been able to fix it is by copying that file from 31.0.2 into appropriate folder. – Dan Jul 30 '21 at 12:21
  • 1
    sometimes occurred this issue, after increasing the memory configuration at `.vmoptions`, solved my issues. Will also try your approach to solve it (if it occurred again) thank youu~ – mochadwi Jul 31 '21 at 16:13

1 Answers1

0

gradle.properties -> org.gradle.jvmargs=-Xmx10000m -XX:MaxPermSize=10000m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

udi
  • 3,672
  • 2
  • 12
  • 33
  • 1
    As it’s currently written, your answer is unclear. Please [edit] to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers [in the help center](/help/how-to-answer). – Community Oct 15 '21 at 09:04
  • This does not provide an answer to the question. Once you have sufficient [reputation](https://stackoverflow.com/help/whats-reputation) you will be able to [comment on any post](https://stackoverflow.com/help/privileges/comment); instead, [provide answers that don't require clarification from the asker](https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-can-i-do-instead). - [From Review](/review/late-answers/30085202) –  Oct 15 '21 at 14:22