每次我试图运行该程序时,都会重复得到以下异常。
虚拟机初始化时出错 无法为对象堆预留足够的空间 无法创建Java虚拟机。
我试图增加我的虚拟内存(页面大小)和RAM大小,但没有效果。
我怎样才能消除这个错误?
每次我试图运行该程序时,都会重复得到以下异常。
虚拟机初始化时出错 无法为对象堆预留足够的空间 无法创建Java虚拟机。
我试图增加我的虚拟内存(页面大小)和RAM大小,但没有效果。
我怎样才能消除这个错误?
当前回答
如果你正在运行一个java程序: -在终端上运行你的程序,使用正确的linux命令:'java -jar myprogram.jar'然后添加-Xms256m - xmx512m,例如:'java -jar myprogram.jar Xms256m - xmx512m '
如果你正在运行一个。sh脚本(linux, mac?)或一个。bat脚本(windows),打开脚本并寻找java选项,如果它们存在并增加内存。
如果以上都不起作用,检查你的进程(windows上的ctrl+alt+delete) (linux/mac上的ps aux),并杀死那些占用分配内存且对你的操作系统不需要的进程!试着重新运行程序。
其他回答
我得到了同样的错误,并通过在run.conf.bat中配置它来解决这个问题
在Jboss5x中使用配置Run .conf.bat运行JVM
如果在传递语句时没有可用的空闲内存,请在run.conf.bat中进行更改
set "JAVA_OPTS=-Xms512m -Xmx512m -XX:MaxPermSize=256m"
使用-XX:MaxHeapSize=512m(或任何您需要的大数字)(或-Xmx512m简称)运行JVM
有时它与
$ sysctl vm.overcommit_memory
vm.overcommit_memory = 2
如果你设置为:
$ sysctl vm.overcommit_memory=0
它应该会起作用。
下面是解决方法:
进入“开始->控制面板->系统->高级(tab)->环境变量->系统 变量->新:变量名:_JAVA_OPTIONS 变量值:-Xmx512M 变量名:Path C:\Program Files\Java\jre6\bin;F:\JDK\bin;
将其更改为适当的路径。
假设您有足够的空闲内存,并且正确地设置了JVM参数,那么您可能会遇到内存碎片的问题。在Windows XP上检查Java最大内存。