转自: http://hi.baidu.com/%CA%A5%B1%AD%C0%EF%B5%C4%CD%F6%C1%E9/blog/item/1a04ed29ded00df599250a2a.html
这两天搞项目,过去用MyEclipse或者Eclipse都没有太多麻烦,但是这次跳出JVM terminated. Exit code=-1……的异常对话框,郁闷了很久,一开始因为提示中提到JDK1.5的问题,怀疑是我JDK用的是1.6版本,所以报错,虽然Eclipse 过去没有这样的问题,但我还是调整了下JDK的版本。只是结果无效。
后来网上有人说是Eclipse版本太高,JDK不支持。我又纳闷了,我的Eclipse是3.4,JDK用1.6,基本是过去的标配了吧。怎么会不兼容的问题?
又看了几个论坛,终于找到一个解决方案,就是把Eclipse.ini文件中的几个参数改改即可。我试了试,竟然成功了。有些小白不知道原因,但我想找到问题的关键,所以继续找,找到一个暂时觉得满意的解释,在这里给大家分享一下:
Eclipse自动关闭解决方法及eclipse.ini设置:
自动关闭的原因可能是eclipse目录下eclipse.ini文件的设置上有问题,一般的ini文件设置主要包括以下几项:
-vmargs
-Xms40m
-Xmx256m
-XX:PermSize=64M
-XX:MaxPermSize=128M
以下解释其意思。
-vmargs:说明后面是VM的参数
-Xms40m:虚拟机占用系统的最小内存
-Xmx256m:虚拟机占用系统的最大内存
-XX:PermSize:最小堆大小。一般报内存不足时,都是说这个太小,
堆空间剩余小于5%就会警告,建议把这个稍微设
大一点,不过要视自己机器内存大小来设置
-XX:MaxPermSize:最大堆大小。这个也适当大些
所以若出现问题,首先请调整 -Xms40m:将其设置的小一些,就ok了,1g内存推荐设置为:
-vmargs
-Xms128M
-Xmx512M
-XX:PermSize=256M
-XX:MaxPermSize=512M
其中-XX:PermSize=64M可以设置大一些,但不能超过MaxPermSize
-Xmx512M的5%为25.6M,理论上要求-Xmx的数值与-XX:MaxPermSize必须大于25.6M