我怎样才能给eclipse比512M更多的内存?

Posted

技术标签:

【中文标题】我怎样才能给eclipse比512M更多的内存?【英文标题】:How can I give eclipse more memory than 512M? 【发布时间】:2011-02-06 07:13:17 【问题描述】:

我有以下设置,但是当我输入 1024 并将所有 512 替换为 1024 时,eclipse 根本不会启动。我的 eclipse JVM 如何才能拥有超过 512M 的内存?

-startup
plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-product
com.springsource.sts.ide
--launcher.XXMaxPermSize
512M
-vm
C:\Program Files (x86)\Java\jdk1.6.0_18\bin\javaw 
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms512m
-Xmx512m
-XX:MaxPermSize=512m

【问题讨论】:

在这里尝试了其中一个答案后,如何检查 Eclipse 占用了多少? (例如,您可能编辑了错误的 eclipse.ini 文件) 【参考方案1】:

试图让 Eclipse 接受我希望它能够使用的尽可能多的内存(例如 2 到 4 个演出)时,我遇到了很多问题。

在 Eclipse 安装目录中打开 eclipse.ini。 您应该能够在 -vmargs 最多 1024 之后将内存大小更改为取决于您的系统的某个最大值。这是我的 Linux 机器上的那个部分:

-vmargs
-Dosgi.requiredJavaVersion=1.5
-XX:MaxPermSize=512m
-Xms512m
-Xmx1024m

这是我的 Windows 盒子上的那个部分:

-vmargs
-Xms256m
-Xmx1024m

但是,我未能将其设置为高于 1024 兆。如果有人知道如何完成这项工作,我很想知道。

编辑:juno 的 32 位版本似乎不接受超过 64 位版本接受 2048 的 Xmx1024m。

编辑:Nick 的帖子包含一些很好的链接,解释了两个不同的事情:

问题很大程度上取决于您的系统和可用的连续空闲内存量,以及 通过使用 javaw.exe(在 Windows 上),您可以获得更大的已分配内存块。

我有 8 gigs 的 Ram 并且不能将 -Xmx 设置为超过 1024 megs 的 ram,即使加载了最少量的程序并且 windows/linux 都报告了 4 到 5 gigs 的空闲 ram。

【讨论】:

你把这些信息放在哪里? @Imray,您需要将这些设置添加(或替换)到您的eclipse.ini 文件中。位置取决于您的平台。对于 Windows,它与 Eclipse 应用程序位于同一文件夹中。对于 OS X,您需要在 Eclipse 应用程序上“显示包内容”,然后在文本编辑器中编辑 Contents/MacOS/eclipse.ini。不确定 Linux... 练习留给读者? :-) 了解选项的含义很有帮助:-vmargs 之后的所有 -X 选项都直接传递给 JVM,因此运行 'java -X' 获取文档。 -Xms 设置初始堆,-Xmx 设置堆可以增长到的最大大小。 PermSize 是存储类/方法对象的区域,与堆分开。 请注意,Java 8 不需要设置 -XX:MaxPermSize=512m。请参阅***.com/questions/18339707/…。 这里是 elcipse.ini 在 Linux 或 Ubuntu 中可能位于的位置 ***.com/a/14898134/457687【参考方案2】:

这是我增加 eclipse Juno 内存分配的方法:

我的系统上总共有 4GB,当我在 eclipse 上工作时,我不运行任何其他重型软件。所以我分配了 2Gb。

我注意到的是最小值和最大值之间的差异应该是 512。下一个值应该是 2048 min + 512 = 2560max

这是设置-Xms2048m -Xmx2560m后eclipse内部的堆值:

【讨论】:

注意——不要忘记小写的m(就像我做的那样)。否则效果很好! 这个日食着色的主题是什么? 我用的是Carboon Color Theme,你可以在这里下载:link【参考方案3】:

照顾和喂养 Eclipse 的记忆饥饿是一种痛苦……

http://www.eclipsezone.com/eclipse/forums/t104307.html https://bugs.eclipse.org/bugs/show_bug.cgi?id=188968 https://bugs.eclipse.org/bugs/show_bug.cgi?id=238378

或多或少,继续尝试少量直到它起作用,这是你的最大值。

【讨论】:

【参考方案4】:

我认为您不需要将 MaxPermSize 更改为 1024m。这对我有用:

-startup
plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-product
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms256m
-Xmx1024m
-XX:PermSize=64m
-XX:MaxPermSize=128m

【讨论】:

嗯...我们可以得到一些 cmet 以及反对票吗?我的回答可能不正确,但它会帮助我了解原因。【参考方案5】:

您可以将其复制到您的eclipse.ini 文件中以获得 1024M:

-clean -showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Xms512m
-Xmx1024m
-XX:PermSize=128m
-XX:MaxPermSize=256m 

【讨论】:

【参考方案6】:

在 STS(大量基于 Eclipse)中处理企业项目时,我经常崩溃,而 STS 的 RAM 使用量达到了 1GB 左右。我无法将新的 .war 文件添加到我的本地 tomcat 服务器,并且在删除 tomcat 文件夹以重新添加它之后,发现我也无法重新添加它。除了主菜单之外,几乎所有需要新弹出窗口的东西都会导致 STS 冻结。

我将 STS.ini(您的 Eclipse.ini 可以类似地配置)编辑为:

--launcher.XXMaxPermSize 1024M -vmargs -Xms1536m -Xmx2048m -XX:MaxPermSize=1024m

立即重新启动 STS,发现它在大约 1.5 gigs 上达到稳定状态,然后终于没有崩溃

【讨论】:

【参考方案7】:

配置这对我有用: -vmargs -Xms1536m -Xmx2048m -XX:MaxPermSize=1024m 关于 Eclipse Java Photon 2018 年 6 月

运行 Windows 10、8 GB 内存和 64 位。 如果您的计算机具有良好的内存,您也可以将 -Xmx2048 -XX:MaxpermSize= 1024m 扩展到 4096m。我的运行良好。

【讨论】:

以上是关于我怎样才能给eclipse比512M更多的内存?的主要内容,如果未能解决你的问题,请参考以下文章

Oozie shell 动作内存限制

怎么调整eclipse的内存大小

eclipse 性能调优之内存分配

我怎样才能降低 JSP 内存使用率。?

Eclipse 需要哪些 JAR 文件才能使用 JSTL 才能最终在 GAE/J 上运行?

如何解决我的电脑内存变小的问题?