ECLIPSE java.lang.OutOfMemoryError: PermGen space 错误
ECLIPSE 最近一段时间经常报错,看了日志,有如下错误信息:
!ENTRY org.eclipse.ui 4 0 2010-09-02 21:13:46.062
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.OutOfMemoryError: PermGen space
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
at java.lang.Class.getMethod0(Class.java:2670)
at java.lang.Class.getMethod(Class.java:1603)
at org.eclipse.ui.internal.handlers.WidgetMethodHandler.getMethodToExecute(WidgetMethodHandler.java:256)
at org.eclipse.ui.internal.handlers.WidgetMethodHandler.isHandled(WidgetMethodHandler.java:238)
at org.eclipse.ui.internal.handlers.WidgetMethodHandler.updateEnablement(WidgetMethodHandler.java:58)
at org.eclipse.ui.internal.handlers.WidgetMethodHandler$1.handleEvent(WidgetMethodHandler.java:50)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1208)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1002)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1008)
at org.eclipse.swt.widgets.Control.sendFocusEvent(Control.java:2583)
at org.eclipse.swt.widgets.Widget.wmSetFocus(Widget.java:2282)
at org.eclipse.swt.widgets.Control.WM_SETFOCUS(Control.java:4573)
at org.eclipse.swt.widgets.Tree.WM_SETFOCUS(Tree.java:6884)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4014)
at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5821)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4619)
at org.eclipse.swt.internal.win32.OS.SetFocus(Native Method)
at org.eclipse.swt.widgets.Control.forceFocus(Control.java:978)
at org.eclipse.swt.widgets.Control.setSavedFocus(Control.java:3234)
at org.eclipse.swt.widgets.Decorations.restoreFocus(Decorations.java:809)
at org.eclipse.swt.widgets.Decorations.WM_ACTIVATE(Decorations.java:1619)
at org.eclipse.swt.widgets.Shell.WM_ACTIVATE(Shell.java:2086)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3943)
at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:342)
at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1578)
at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2010)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4619)
at org.eclipse.swt.internal.win32.OS.DestroyWindow(Native Method)
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.OutOfMemoryError: PermGen space
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
at java.lang.Class.getMethod0(Class.java:2670)
at java.lang.Class.getMethod(Class.java:1603)
at org.eclipse.ui.internal.handlers.WidgetMethodHandler.getMethodToExecute(WidgetMethodHandler.java:256)
at org.eclipse.ui.internal.handlers.WidgetMethodHandler.isHandled(WidgetMethodHandler.java:238)
at org.eclipse.ui.internal.handlers.WidgetMethodHandler.updateEnablement(WidgetMethodHandler.java:58)
at org.eclipse.ui.internal.handlers.WidgetMethodHandler$1.handleEvent(WidgetMethodHandler.java:50)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1208)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1002)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1008)
at org.eclipse.swt.widgets.Control.sendFocusEvent(Control.java:2583)
at org.eclipse.swt.widgets.Widget.wmSetFocus(Widget.java:2282)
at org.eclipse.swt.widgets.Control.WM_SETFOCUS(Control.java:4573)
at org.eclipse.swt.widgets.Tree.WM_SETFOCUS(Tree.java:6884)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4014)
at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5821)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4619)
at org.eclipse.swt.internal.win32.OS.SetFocus(Native Method)
at org.eclipse.swt.widgets.Control.forceFocus(Control.java:978)
at org.eclipse.swt.widgets.Control.setSavedFocus(Control.java:3234)
at org.eclipse.swt.widgets.Decorations.restoreFocus(Decorations.java:809)
at org.eclipse.swt.widgets.Decorations.WM_ACTIVATE(Decorations.java:1619)
at org.eclipse.swt.widgets.Shell.WM_ACTIVATE(Shell.java:2086)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3943)
at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:342)
at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1578)
at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2010)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4619)
at org.eclipse.swt.internal.win32.OS.DestroyWindow(Native Method)
PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决方法也一定是加大内存。解决问题的方式就是:修改了安装目录eclipse.ini文件,在最后面增加了两行.
-XX:PermSize=128M
-XX:MaxPermSize=128M
-XX:MaxPermSize=128M