Eclipse报错(”Could not reserve enough space for object heap”)
今天 Eclipse 更新完后 重新启动的时候 Eclipse出现了问题 当时觉得挺莫名其妙的。
点击控制台启动 显示的错误信息为“Error occurred during initialization of VM Could not reserve enough space for object heap”。
原因是:
在Eclipse启动时为Java虚拟机(JVM)分配的内存大于系统可用内存数,所以没有足够的空间分配给JVM来创建Object。
JVM中如果98%的时间是用于GC且可用的, Heap size不足2%的时候将抛出此异常信息。JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.
JVM中如果98%的时间是用于GC且可用的, Heap size不足2%的时候将抛出此异常信息。JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.
解决方法:
修改eclipse目录下的eclipse.ini里面的几个参数:-Xms -Xmx,给他们赋予适当的值。
规则如下JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。Heap Size 最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。
规则如下JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。Heap Size 最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。
例子(我的Eclipse.ini)
-showsplash
org.eclipse.platform
–launcher.XXMaxPermSize
256M
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx256m
org.eclipse.platform
–launcher.XXMaxPermSize
256M
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx256m
这样问题就轻松解决了…………