我java.lang.OutOfMemoryError: Java heap space在IntelliJ Idea上编译我的android项目时反复出错.
我通过按照此处的链接增加了我的Java堆空间但是没有解决问题.有趣的是,有时我的应用程序将编译,而在其他时候由于Java堆空间错误,应用程序将无法编译.即使我没有对应用程序进行任何更改,它也会有时编译并且有时会失败.
知道如何解决这个问题吗?
我正在编译一个android项目,可能是由于我拥有的大量资源(可绘制的hdpi,xhdpi,xxhdpi,large-hdpi,large-xhdpi,large-xxhdpi)?但话说回来,就像我说的那样,它有时会编译,有时则不然.我每次尝试编译大约10次,幸运的是它会成功一次.
这是错误:
内部错误:(java.lang.OutOfMemoryError)Java堆空间java.lang.OutOfMemoryError:java.util.Arrays.copyOf(Arrays.java:2271)中的Java堆空间,位于com.intellij.util.io.UnsyncByteArrayOutputStream.write( UnsyncByteArrayOutputStream.java:52)在com.intellij.util.io.DataOutputStream.write(DataOutputStream.java:34)在java.io.FilterOutputStream.write(FilterOutputStream.java:97)在com.intellij.util.io.IOUtil位于org.jetbrains.jps.incremental.storage.OneToManyPathsMapping $ PathCollectionExternalizer.save(OneToManyPathsMapping)的org.jetbrains.jps.incremental.storage.OneToManyPathsMapping $ PathCollectionExternalizer.save(OneToManyPathsMapping.java:87)中的.writeString(IOUtil.java:63) .java:84)在com的org.jetbrains.jps.incremental.storage.AbstractStateStorage $ 1.append(AbstractStateStorage.java:103).intellij.util.io.PersistentHashMap.doAppendData(PersistentHashMap.java:371)在com.intellij.util.io.PersistentHashMap.appendData(PersistentHashMap.java:358)在org.jetbrains.jps.incremental.storage.AbstractStateStorage.appendData( AbstractStateStorage.java:101)在org.jetbrains.jps.incremental.storage.OneToManyPathsMapping.appendData(OneToManyPathsMapping.java:50)在org.jetbrains.jps.incremental.storage.SourceToOutputMappingImpl.appendOutput(SourceToOutputMappingImpl.java:50)在组织.jetbrains.jps.builders.impl.BuildOutputConsumerImpl.registerOutputFile(BuildOutputConsumerImpl.java:65)在org.jetbrains.jps.android.AndroidResourceCachingBuilder.runPngCaching(AndroidResourceCachingBuilder.java:126)在org.jetbrains.jps.android.AndroidResourceCachingBuilder.build (AndroidResourceCachingBuilder.java:48)在org.jetbrains.jps.android.AndroidResourceCachingBuilder.build(AndroidResourceCachingBuilder.java:32)在org.jetbrains.jps.incremental.BuildOperations.buildTarget(BuildOperations.java:100)在org.jetbrains.jps.incremental.IncProjectBuilder .runBuildersForChunk(IncProjectBuilder.java:744)org.jetbrains.jps.incremental.IncProjectBuilder.buildTargetsChunk(IncProjectBuilder.java:770)org.jetbrains.jps.incremental.IncProjectBuilder.buildChunkIfAffected(IncProjectBuilder.java:702)at org. jetbrains.jps.incremental.IncProjectBuilder.buildChunks(IncProjectBuilder.java:523)在org.jetbrains.jps.incremental.IncProjectBuilder.runBuild(IncProjectBuilder.java:314)在org.jetbrains.jps.incremental.IncProjectBuilder.build(IncProjectBuilder. java:179)at org.jetbrains.jps.cmdline.BuildRunner.runGild(BuildRunner.java:129)org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:220)org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:112)atg.jetbrains .jps.cmdline.BuildMain $ MyMessageHandler $在java.util.concurrent.Executors $ RunnableAdapter 1.run(BuildMain.java:132)在org.jetbrains.jps.service.impl.SharedThreadPoolImpl $ 1.run(SharedThreadPoolImpl.java:41) .call(Executors.java:471)java.util.concurrent.FutureTask $ Sync.innerRun(FutureTask.java:334)at java.util.concurrent.FutureTask.run(FutureTask.java:166)132)在java.util.concurrent的java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:471)上的org.jetbrains.jps.service.impl.SharedThreadPoolImpl $ 1.run(SharedThreadPoolImpl.java:41). FutureTask $ Sync.innerRun(FutureTask.java:334)at java.util.concurrent.FutureTask.run(FutureTask.java:166)132)在java.util.concurrent的java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:471)上的org.jetbrains.jps.service.impl.SharedThreadPoolImpl $ 1.run(SharedThreadPoolImpl.java:41). FutureTask $ Sync.innerRun(FutureTask.java:334)at java.util.concurrent.FutureTask.run(FutureTask.java:166)
提前致谢!