在具有 3.5 GB RAM 的 WinXP SP3 32 位上运行 Eclipse 3.5.1、JDK 1.6.0_17。
我知道已知的 Eclipse 最佳实践, ,仍在尝试找出 eclipse.ini。

这将启动: -Xmx588m 这不会: -Xmx589m.
与相同 -XX:MaxPermSize. 。以上任何内容 -XX:MaxPermSize=140m 不会启动。
死亡画面类似于 (取自 这里).

关于为什么会发生这种情况有什么想法吗?

有帮助吗?

解决方案

请参阅此日食错误

一般问题是jvm需要一个连续的内存块。在Windows上,该过程将获得2个Gigs,其他加载的库被放置在内存空间的不同区域。如果一个库恰好放在中间,基本上可以减少一半的尺寸。

Eclipse启动程序将加载一些系统dll来执行图形处理,特别是user32.dll可能会导致第三方库被加载,具体取决于您的计算机上安装的内容(见这里)。

要获得更高的内存限制,可以强制将jvm分叉到与eclipse启动器不同的进程中。在vm初始化其内存之前,jvm进程不会加载这些额外的库。通过使用指向javaw.exe的-vm参数来执行此操作:

eclipse -vm C:\jdk\jre\bin\javaw.exe

其他提示

也可以看看 这个错误 203325 有关如何使用以下工具监控内存使用情况的建议:

  • 控制台
  • 内存监控工具(eclipse工具)

笔记:作为 在这里发表评论:

如果您没有声明最大内存限制,则将其留给操作系统内存管理器。

-Xmx <size> 对于像 J2ME 这样的小型设备进行编程非常有用。
如果您正在为内存受限的小型设备进行编程,那么您可以使用 -Xmx 即使您可能使用的是 PC,也可以使用 JVM 属性来模拟小型设备。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top