我不断收到这个 java.lang.OutOfMemoryError: Java heap space error in eclipse using JDK 1.6 u43 and eclipse 4.2.2 under Windows 7 64bit。我不知道这个错误是什么意思或如何解决它......
5 回答
无需过多讨论,堆就是一个大型内存池,它在程序运行期间存储您的实时变量等,并且错误消息表明您已经用完了它!
您可以先尝试使用更大的最大堆大小运行 eclipse
eclipse -vmargs -Xmx1024M
如果这解决了您的问题,那么您可以更改 eclipse.ini 文件中的值,正如其他一些建议所提到的那样。
如果这不能解决问题,则可能是您的程序中存在某种内存泄漏,并且试图在内存中存储太多大对象,在这种情况下,我们需要查看代码才能提供帮助。
您可能有内存泄漏,或者您可能会同时分配大型对象,例如图像,而您可以单独分配它们然后将它们的引用清零,或者您可能只是有一个需要大量内存的程序。尝试将 -Xmx 和 -Xms 命令行参数设置为较大但在计算机能力范围内的参数,例如 -Xmx=4096m
双击你在Eclipse中安装的Installed Jres,配置参数如下:
-Xms512M -Xmx1024M
在 Eclipse 的默认 VM 参数中。
这个问题可能会解决。
问候!
在 Eclipse 下载文件夹中,制作/替换 eclipse.ini 文件中的条目
-Xms512m
-Xmx1024m
最佳做法是检查您的代码是否存在内存泄漏,并确保您不会在不关闭它们或收集垃圾的情况下留下数千个对象或流。简单地增加你的内存限制就像避免问题或逃避你所犯的错误。检查代码后,如果您认为一切正常但仍需要更多内存来处理它,则可以增加堆大小。看看这里: 增加堆大小
http://www.ibm.com/developerworks/java/library/j-leaks/
http://www.openlogic.com/wazi/bid/188158/How-to-Fix-Memory-Leaks-in-Java
我希望它会帮助你。