我要去接OutOfMemoryException。我通过Project->Properties->Run->VM选项来增加-Xms1600M -Xmx1600M在netbeans中的jvm内存。
我在windows 7 4GB RAM JDK版本1.7 Netbeans版本7.0.1上运行32位java
但当我跑的时候,
System.out.println("MaxMemory: " + Runtime.getRuntime().maxMemory()/1024/1024);
System.out.println("FeeMemory: " + Runtime.getRuntime().freeMemory()/1024/1024);
System.out.println("TotalMemory: " + Runtime.getRuntime().totalMemory()/1024/1024);我得到了
MaxMemory: 247 FeeMemory: 14 TotalMemory: 15
我试图通过更改netbeans_default_options文件来更改netbeans.conf。
netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true"至
netbeans_default_options="-J-client -J-Xss2m -J-Xmx1800m -J-XX:+UseConcMarkSweepGC -J-XX:+CMSClassUnloadingEnabled -J-XX:+CMSPermGenSweepingEnabled -J-Xms32m -J-XX:PermSize=32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true"但是它给了我JVM创建失败的错误。
编辑的
如所建议的那样,所作的改动:
netbeans_default_options="-J-client -J-Xss2m -J-Xmx1400m -J-Xms1400m -J-XX:+UseConcMarkSweepGC -J-XX:+CMSClassUnloadingEnabled -J-XX:+CMSPermGenSweepingEnabled -J-XX:PermSize=32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true"仍然获得JVM创建失败的错误
帮助。
提前感谢
发布于 2012-09-03 13:48:14
我卸载了所有东西(java和netbeans),并重新安装了所有东西(java和netbeans)。它仍然无法分配-Xmx1400m,但分配-Xmx1000m并运行良好。谢谢大家的努力。
发布于 2013-01-25 14:18:55
我不太确定,但正如我所知,如果您在32位环境上运行,则不能将超过1GB的内存分配给jvm。
有关更多信息,请参阅此链接http://www.oracle.com/technetwork/java/javase/gc-tuning-6-140523.html。
https://stackoverflow.com/questions/12242602
复制相似问题