【问题标题】:Eclipse crashes with java.lang.OutOfMemoryError: PermGen space [closed]Eclipse 因 java.lang.OutOfMemoryError 崩溃:PermGen 空间 [关闭]
【发布时间】:2015-06-29 09:05:49
【问题描述】:

生成的错误是

java.lang.OutOfMemoryError: PermGen space
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:183)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:576)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:546)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:477)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:465)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:445)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:381)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:457)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
at java.lang.ClassLoader.loadClass(Unknown Source)
at org.eclipse.wst.jsdt.ui.actions.RenameAction.<init>(RenameAction.java:57)
at org.eclipse.wst.jsdt.ui.actions.RefactorActionGroup.<init>(RefactorActionGroup.java:350)
at org.eclipse.wst.jsdt.ui.actions.RefactorActionGroup.<init>(RefactorActionGroup.java:197)
at org.eclipse.wst.jsdt.internal.ui.navigator.JavaNavigatorRefactorActionProvider.init(JavaNavigatorRefactorActionProvider.java:58)
at org.eclipse.ui.navigator.NavigatorActionService.initialize(NavigatorActionService.java:371)
at org.eclipse.ui.navigator.NavigatorActionService.getActionProviderInstance(NavigatorActionService.java:355)
at org.eclipse.ui.navigator.NavigatorActionService.fillActionBars(NavigatorActionService.java:253)
at org.eclipse.ui.navigator.CommonNavigatorManager.selectionChanged(CommonNavigatorManager.java:239)
at org.eclipse.jface.viewers.Viewer$2.run(Viewer.java:162)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.runtime.Platform.run(Platform.java:888)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at org.eclipse.jface.viewers.Viewer.fireSelectionChanged(Viewer.java:160)
at org.eclipse.jface.viewers.StructuredViewer.updateSelection(StructuredViewer.java:2132)
at org.eclipse.jface.viewers.StructuredViewer.handleSelect(StructuredViewer.java:1160)
at org.eclipse.ui.navigator.CommonViewer.handleSelect(CommonViewer.java:483)  

eclipse.ini的内容

 -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
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
512M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize=512M
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m -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
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
512M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize=512M
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m 

我找到了一些解决这个错误的方法并相应地实施了。

https://stackoverflow.com/a/16810832/5031486

https://stackoverflow.com/a/88262/5031486

实施上述链接中提供的解决方案后,我仍然收到此错误,Eclipse 仍然崩溃。

我正在使用 Eclipse Galileo、JDK 1.7、Apache tomcat 6.0。

在 eclipse.ini 文件中所做的更改

    -Xms40m -Xmx512m  -XX:MaxPermSize=512m

以前的值是

    -Xms40m -Xmx128m  -XX:MaxPermSize=128m 

我已经进行了上述更改。但我仍然有同样的问题。
谁能帮我解决这个问题。

【问题讨论】:

  • 请仔细观察你的语法。如果您的问题由于语法错误而难以阅读,您将得不到答案。出于同样的原因,请避免使用聊天缩写。
  • 您能否添加您所做的确切更改?
  • @soilworker 我已经提到了变化请检查它
  • 到底是什么失败了?是 Eclipse 本身吗?您正在运行的程序?雄猫?
  • 向我们展示 eclipse.ini 文件的确切内容

标签: java eclipse out-of-memory tomcat6


【解决方案1】:

你的 eclipse.ini 里有各种各样的重复。尝试类似:

-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
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
512M
-showsplash
org.eclipse.platform
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m

【讨论】:

    猜你喜欢
    • 2011-09-04
    • 2012-07-31
    • 2016-06-07
    • 2013-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多