JAVA中出现OutOfMemoryError:Eclipse中设定Java虚拟机内存
在使用Eclipse的过程中,有时会遇到使用Java虚拟机内存不够的情况,这时Eclipse就会提示你重启,对于大型开发,应修改 VM 自变量以使有更多的堆可用。
对应在Eclipse中的设置为:
窗口->首选项->JAVA->已安装的JRE(window-preferences-java-installed JRE)
在缺省的VM自变量中增加:-Xmx256M (选中以安装的JDK,点击edit,在default VM Arguments中,设置为-Xmx1024M )
前提,是你的物理内存要大于1024M
原因:
Java虚拟机默认分配64M内存,如果你的应用比较大,超出64M内存,Java虚拟机就会抛出OutOfMemoryError,并停止运行。不管是什么应用(Web应用、Application等),只需要修改你的机器上的运行Java命令,在javaxxx命令中添加-Xms(最小使用内存)、-Xmx(最大使用内存)即可解决。当然,这儿的内存容量都是指物理内存,不能超出你的机器的物理内存的总容量。
Ant使用中的OutOfMemoryError解决
在开发大型项目时,类文件通常有数千个之多,这时都需要采用一些make工具来辅助开发。有时需要编译的类太多,使用Ant编译时,会出现OutOfMemoryError的错误,使编译进程中断。这时,通常通过先移出部分文件,分批编译。但Java编译过程的自动依赖编译,通常很难确定究竟应该先移出哪些文件、后移出哪些文件伤透脑筋。
解决办法如下:
转到你的Ant的安装目录,在bin子目录中找到ant.bat,使用文字编辑器打开,修改:runAnt处的允许命令,添加如下参数: runAnt
"%_JAVACMD%"-Xms128m-Xmx512m-classpath……