Eclipse: VM 初始化时发生错误

3
几天前,我在调试我的Eclipse RCP时遇到了这个错误消息:
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

我曾经尝试通过重启系统来解决这个问题,而这种方法也确实有效。但是今天即使重启也没用了。请问有人知道为什么会突然出现这种情况吗?

以下是我使用的 VM 参数:

-Dosgi.requiredJavaVersion=1.5 -Xmx2048m -Xms1024m -Dosgi.locking=none -XX:MaxPermSize=256m

1
2048m 对于 32 位的 Java 来说可能会很难分配。如果可能的话,请切换到 64 位的 Java(或使用更少的内存)。 - greg-449
谢谢你,格雷格。我从你的提示中得到了一个想法,就是减少被分配的内存量,现在它重新开始了(-Xmx1024m -Xms512m)。 - Markus
3个回答

4

尝试使用以下方法进行修复:

前往开始菜单 -> 控制面板 -> 系统 -> 高级选项卡 -> 环境变量 -> 系统变量 -> 新建:

变量名:_JAVA_OPTIONS

变量值:-Xmx512M


我一直在尝试您的建议,但据我所见,这基本上只是使用512MB堆空间启动我的应用程序。这比我已经在运行配置中指定的要少。这并没有改变结果。 - Markus
检查昨天/今天是否有任何更新与您的系统(32位/64位)不兼容。因为我曾经升级了Java版本,然后我的Eclipse停止工作,所以我将最新的Java版本恢复/卸载回旧版本。 - Visky G

1

在我重新安装了最新版本的JDK之后,我的问题得到了解决。


请勿在多个问题中发布相同的答案(无论是直接复制还是链接)。发表一个好的答案,然后投票/标记其他问题为重复。如果问题不是重复的,请根据问题量身定制您的答案。顺便说一句:jdk 8已经严重过时了,当前版本是jdk18 :) - kleopatra
我会记住的。谢谢 @kleopatra - Dipesh Majithia

0

你正在打开Eclipse,指定了2GB的最大内存和1GB的最小内存。但是提示信息告诉你没有足够的内存来支持这个操作。


我知道这一点,但我想知道现在我能做什么。据我所知,我不能指定超过2GB的RAM?我记得这与是32位还是64位系统有关。 - Markus
如果我没有记错,在32位系统中存在3GB的RAM限制 https://en.wikipedia.org/wiki/3_GB_barrier - 问题是为什么您需要分配2GB的RAM用于Eclipse安装。我使用1GB运行我的Eclipse,它工作得很好。但这通常取决于项目,使用的插件和环境。 - Dirk Fauth
我现在完全删除了所有的内存提示,现在它可以正常工作了。 - Markus

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接