2012-02-08 103 views
2

当我尝试运行jnlp文件时,出现“无法创建JVM”错误。创建Java虚拟机失败

但是,当我从jnlp中的Java/j2se标记中删除max-heap-size="1100m"时,它有效。

max-heap-size似乎出了什么问题。我做了一些实验来更改eclipse.ini文件中的堆大小。我可以设置的最大堆大小是“940M”,否则当启动eclipse时出现“无法创建JVM ...”错误。

我怀疑这是我PC上的内存(硬件)问题。我的笔记本电脑很新。但出于某种原因,我的管理员将操作系统从Windows 7更改为Windows XP。他们现在想要更换回Windows 7.

我正在使用JDK 1.6 update 29和eclipse版本:3.7.0生成ID:I20110613-1736。 Windows xp sp3。

+1

可能的重复[Java webstart max-heap-size导致JVM无法启动](http://stackoverflow.com/questions/3285915/java-webstart-max-heap-size-causes-jvm-cannot-be - 开始) – NPE 2012-02-08 15:12:18

+0

此外,请参阅http://stackoverflow.com/questions/171205/java-maximum-memory-on-windows-xp – NPE 2012-02-08 15:12:26

+0

我可以告诉你,这不是一个内存/硬件问题,因为它发生在所有日食任何Windows到目前为止我见过... – m0skit0 2012-02-08 15:12:32

回答

3

Java需要连续存储堆空间。特别是Windows往往有一个有限的连续内存区域(如果其他程序正在运行,它会更小)

我原以为你可以拥有1.2 GB的堆,但这远低于4 GB的32位内存,理论上可以使用。

切换到64位OS上的64位JVM是解决方案。这将允许您创建接近物理内存大小的堆空间。

相关问题