【问题标题】:Consistently getting java.lang.OutOfMemoryError: PermGen space Error in Eclipse始终获取 java.lang.OutOfMemoryError: PermGen space Error in Eclipse
【发布时间】:2012-01-19 22:49:48
【问题描述】:

我在 Eclipse 中打开任何文件时始终收到 java.lang.OutOfMemoryError: PermGen space Error(exclipse 已关闭并且日志显示此错误)以及当我 manuaalu 退出 exclipse 时显示相同的错误,说无法保存工作区的状态(说明 permgen 错误)这是工作区元数据文件夹下日志文件中的日志

!ENTRY org.eclipse.ui 4 0 2011-12-14 10:42:09.464
!MESSAGE Unhandled event loop exception

!ENTRY org.eclipse.osgi 4 0 2011-12-14 10:42:11.336
!MESSAGE Application error
!STACK 1
java.lang.OutOfMemoryError: PermGen space

!ENTRY org.eclipse.osgi 4 0 2011-12-14 10:42:12.303
!MESSAGE Shutdown error
!STACK 1
java.lang.OutOfMemoryError: PermGen space

即使我将 eclipse.ini 参数更改为以下值。得到同样的错误

-Xms4096m 
-Xmx4096m 
--launcher.XXMaxPermSize 
4096m 

我使用的是 eclipse helios 3.6 版本,内存为 8 GB。 我不知道如何摆脱它。

【问题讨论】:

  • 4G 看起来像很多烫发空间!你可能在某个地方得到了一个损坏的罐子,它足以引起麻烦,但不足以完全崩溃。再次下载并检查 MD5/SHA1 是否可以确保正确。

标签: java eclipse jvm jvm-arguments


【解决方案1】:

您可以通过在 eclipse.ini 文件中添加以下行来增加 perm 空间

-XX:PermSize=XXXm -XX:MaxPermSize=XXXm

【讨论】:

  • 你的意思是这样的 -XX:PermSize=4096m -XX:MaxPermSize=4096m。对吗?
  • 是的,JVM 参数详细信息在以下链接oracle.com/technetwork/java/javase/tech/…hth
  • 而且您永远不需要超过 512MB 的 PermGen,即使这样也很多!最好给更多的堆内存...
【解决方案2】:

如果出现此问题,只需关闭一个新发行版并重新安装..(我也遇到了一些内存问题,我增加了内存,但它没有帮助我..)但是重新安装解决了一切..

【讨论】:

    【解决方案3】:

    我在开发 Eclipse 插件的过程中一直看到这个问题。我可以摆脱它的唯一方法是切换到新的工作区。我的项目源代码在其他地方,所以每次我只需要将我的项目导入新的工作区即可。

    我相信工作区中存储了一些不好的东西,我只是不知道它们是什么。

    【讨论】:

      【解决方案4】:

      删除 .metadata 文件夹并重新启动 eclipse 并将所有项目重新导入您的工作区。这对我有用。

      【讨论】:

        【解决方案5】:

        如果您在此问题出现之前编写了代码,请尝试移动您的 .log 文件或将其删除。由于日志文件的大小,这是一个问题。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-11-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-09-10
          • 2013-04-04
          • 1970-01-01
          相关资源
          最近更新 更多