首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >获取"Java Heap Space“和"Out of Memory”时的Eclipse内存设置

获取"Java Heap Space“和"Out of Memory”时的Eclipse内存设置
EN

Stack Overflow用户
提问于 2008-12-02 14:28:07
回答 11查看 185.5K关注 0票数 58

当尝试在Eclipse中启动和运行flex/java项目时,我使用eclipse、Tomcat和JRE不断得到一个“内存不足异常”和"Java堆空间“。

在研究尝试调整内存设置时,我发现有三个地方可以调整这些设置:

窗口>

  • Eclipse.ini
  • The或Catalina.bat

下的Catalina.bat JRE设置

在这些不同的地方设置-xms和-xmx有什么区别?

有没有办法验证这些内存设置是否相应地进行了设置?

对于具有2 2gb内存的计算机,最佳的-xms和-xmx设置是什么?

还有其他的记忆小贴士吗?

谢谢。

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2008-12-02 14:33:49

-xms是启动内存(在虚拟机启动时),-xmx是虚拟机的最大内存

  • eclipse.ini :运行eclipse
  • jre设置的VM的内存:从eclipse运行的java程序的内存: tomcat服务器

的内存。

票数 52
EN

Stack Overflow用户

发布于 2008-12-02 15:08:02

首先,我建议您将问题缩小到组件抛出“内存不足异常”的问题。

这可能是:

  1. Eclipse本身(我在Tomcat

下使用doubt)

  • Your应用程序

JVM参数-xms-xmx表示堆的“起始内存”和“最大内存”。忘记“开始记忆”吧。这现在对你没有帮助,只有当你确定你的应用程序会迅速消耗这么多内存时,你才应该改变这个参数。

在生产环境中,我认为您唯一可以更改的参数是Catalina.sh或Catalina.bat文件下的-xmx。但是,如果您直接从Eclipse使用Tomcat配置调试环境来测试您的webapp,您只需转到"Debug Configurations“> "Apache Tomcat”> "Arguments“> "VM arguments”并在那里设置-xmx即可。

至于2 2gb的最佳-xmx,这在很大程度上取决于你的环境和你的应用程序可能接受的请求数量。我会尝试从500mb到1 1gb的值。检查您的操作系统虚拟内存“区域”限制和JVM本身的限制。

票数 14
EN

Stack Overflow用户

发布于 2009-11-12 20:46:11

在我们的案例中发现了两个问题。

  1. 内存正在停止,我们必须将启动perm大小设置为更高的值。我猜它使用内存的速度比分配内存的速度要快。在我们的情况下。Eclipse -XX:MaxPermSize=256m
  2. We使用Clearcase,来自Rational Clearcase SCM (7.0.0.2)的插件在-XX:PermSize=256m中使用。这个插件就是Eclipse崩溃的原因。目前我们还不知道为什么,但对于其他人来说知道这一点是很好的。被迫将其禁用。
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/334102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档