java.lang.OutOfMemoryError:Eclipse Helios中的PermGen空间

Joe*_*dev 12 eclipse out-of-memory xtext helios

我在eclipse中创建了一个Xtext插件.每次我通过上下文菜单将其作为"Eclipse应用程序"启动时,我会在新的Eclipse实例崩溃之前获得一些优势.我切换回原始实例并在控制台窗口中看到

Root exception:
java.lang.OutOfMemoryError: PermGen space
Run Code Online (Sandbox Code Playgroud)

我回顾了论坛中的一些解决方案,但与tomcat有很多关系.有人可以给我一些建议,我该如何解决这个问题?我正在使用Eclipse helios.我的'eclipse.ini'文件看起来像:

-startup
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.2.R36x_v20101222
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx384m
Run Code Online (Sandbox Code Playgroud)

我运行eclipse的机器只有大约4GB的RAM

================================================== ====================

更新:我希望这对任何可能遇到同样问题的人都有帮助.我按照这里的说明尝试 -XX:MaxPermSize=256m在我的eclipse.ini文件中设置.这没用.最后,我不得不卸载java sdk(我使用的是最新的jdk1.6.0_26),我从这里安装了旧版本(jdk1.6.0_20).然后-XX:MaxPermSize=256m 我在我的eclipse.ini中设置它现在看起来如下:

-startup
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.2.R36x_v20101222
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.defaultAction
openFile
-vmargs
-Xms40m
-Xmx1024m
-XX:MaxPermSize=256m
Run Code Online (Sandbox Code Playgroud)

我希望这可以帮助处于相同情况的人.当我启动我的Xtext插件时,就会发生这个问题.

Seb*_*kow 19

请在启动配置中添加以下vm参数(运行 - >运行配置)

-XX:MaxPermSize=128m
Run Code Online (Sandbox Code Playgroud)

这应该有所帮助.