7

我正在从 Eclipse 运行我的程序并使用 64 位 java,但我仍然无法让它分配超过 2GB 的内存。我正在运行一些基准测试,所以我需要大量内存。

我的 eclipse.ini 中有这个:-Xmx8g

我希望它使用我所有的记忆。这可能是由于 32 位版本的 eclipse 造成的吗?我不确定我对日食有什么。

我尝试在运行程序时将 -Xmx8g 发送到 VMArgs。我正在运行 64 位 Windows 7 和 64 位 JRE。

4

4 回答 4

6

在运行配置屏幕中,转到参数选项卡,添加-Xmx8g到 VM 参数文本框。

于 2013-04-03T22:46:32.760 回答
2

在尝试了其他所有方法之后,看起来 VMArguments 根本无法在 Eclipse 中工作。

在 Eclipse 中更改 DEFAULT VM 参数有效(终于!):

将 VM 参数插入您的 JRE:当 Eclipse 打开时,打开 Preferences(对于 Windows:位于 Window 菜单项下。对于 Mac:位于 Eclipse 菜单项下),打开 Java 部分,单击 Installed JREs,单击 JRE使用过(可能是 jre6),单击 Edit... 按钮,并将其插入到 Default VM Arguments 中:

-Xms256M -Xmx8192M

于 2013-04-04T12:59:40.660 回答
1

尝试这样做:

System.getProperty("sun.arch.data.model") 

并查看它是否在您的程序中返回 32 或 64

此外,您需要将 -Xmx 添加到您的程序的启动参数中,而不仅仅是 Eclipse。

您可以通过执行以下操作来验证您的程序的 -Xmx 配置是否正确:

Runtime.getRuntime().maxMemory();
于 2013-04-03T22:42:21.920 回答
0

您只需添加-d64到您的eclipse.ini

于 2014-07-02T17:35:12.403 回答