我在eclipse中安装了MAT
,还打开了IBM格式堆转储的插件
当我尝试从eclipse打开带有File->Open
的heapdump时,我收到一条消息框错误说:
在以下期间发生内部错误:“从'C:\ UserData \ heapdump.44124802.212242.6876.0003.phd'解析堆转储”。 Java堆空间
我认为这是由于eclipse中的最大堆大小。目前eclipse.ini如下:
-startup plugins / org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library plugins / org.eclipse.equinox.launcher.win32.win32.x86_1.1.2.R36x_v20101222-product org.eclipse.epp.package.jee.product
--launcher.defaultAction openFile
--launcher.XXMaxPermSize 256M
-showsplash org.eclipse.platform
--launcher.XXMaxPermSize 256m
--launcher.defaultAction openFile
-vmargs
-Dosgi.requiredJavaVersion = 1.5
-Xms40m
-Xmx512m
如果我更改内存部分如下:
-Xms40m
-Xmx1024m
然后eclipse甚至没有开始:
无法创建Java虚拟机
这是什么问题?
答案 0 :(得分:0)
使用Xms
在命令行上使用Xmx
java -version
值进行试验。如果您指定的那些值在那里工作,我怀疑需要以某种方式调整PermGen
值。如果没有,您可能没有系统上的可用内存。
答案 1 :(得分:0)
Java需要连续内存用于堆空间。特别是Windows往往具有有限的连续可用内存区域(如果其他程序正在运行则会更小)
此外,一般建议:设置-Dosgi.requiredJavaVersion=1.6
,而不是1.5.
看看这些链接..
1。 Java maximum memory
2。 Why is the maximum size of the Java heap fixed?