Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Problems with Eclipse (and m2eclipse)

I use Eclipse and I have serious problems :-( First I try to reconstruct my situation rudely for you:

  1. I installed Eclipse Java EE Helios and JDK 1.6.0_21 and configured windows' system vaariables
  2. I installed m2eclipse
  3. I generated an archetype for a JSF Webproject

I use Windows XP Professional SP3

So... now Eclipse has very big problems. When I try to open the pom.xml or use some maven specific options eclipse stops working and a permgen space error occures, like here in my last session:

!SESSION 2010-07-12 16:45:23.671 -----------------------------------------------
eclipse.buildId=I20100608-0911
java.version=1.6.0_21
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=de_DE
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.jee.product

!ENTRY org.eclipse.core.resources 2 10035 2010-07-12 16:45:24.796
!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.

!ENTRY org.eclipse.ui 4 0 2010-07-12 16:54:53.046
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.OutOfMemoryError: PermGen space
 at java.lang.ClassLoader.defineClass1(Native Method)
 at java.lang.ClassLoader.defineClassCond(Unknown Source)
 at java.lang.ClassLoader.defineClass(Unknown Source)
 at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:580)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:550)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:481)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:469)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
 at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
 at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:469)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
 at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at org.eclipse.jface.action.ActionContributionItem.copyMenu(ActionContributionItem.java:1270)
 at org.eclipse.jface.action.ActionContributionItem.handleShowProxy(ActionContributionItem.java:1248)
 at org.eclipse.jface.action.ActionContributionItem.access$4(ActionContributionItem.java:1237)
 at org.eclipse.jface.action.ActionContributionItem$8.handleEvent(ActionContributionItem.java:1210)
 at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
 at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
 at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
 at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1058)
 at org.eclipse.swt.widgets.Control.WM_INITMENUPOPUP(Control.java:4485)
 at org.eclipse.swt.widgets.Control.windowProc(Control.java:4188)
 at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
 at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1598)
 at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2038)
 at org.eclipse.swt.widgets.Display.windowProc(Display.java:4886)
 at org.eclipse.swt.internal.win32.OS.TrackPopupMenu(Native Method)
 at org.eclipse.swt.widgets.Menu._setVisible(Menu.java:256)

!ENTRY org.eclipse.core.jobs 4 2 2010-07-12 16:54:53.046
!MESSAGE An internal error occurred during: "Periodic workspace save.".
!STACK 0
java.lang.OutOfMemoryError: PermGen space
 at java.lang.ClassLoader.defineClass1(Native Method)
 at java.lang.ClassLoader.defineClassCond(Unknown Source)
 at java.lang.ClassLoader.defineClass(Unknown Source)
 at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:580)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:550)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:481)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:469)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
 at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
 at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:469)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
 at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at org.eclipse.jdt.internal.core.JavaModelManager.saveVariablesAndContainers(JavaModelManager.java:3819)
 at org.eclipse.jdt.internal.core.JavaModelManager.saving(JavaModelManager.java:4065)
 at org.eclipse.core.internal.resources.SaveManager.executeLifecycle(SaveManager.java:361)
 at org.eclipse.core.internal.resources.SaveManager$1.run(SaveManager.java:170)
 at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
 at org.eclipse.core.internal.resources.SaveManager.broadcastLifecycle(SaveManager.java:173)
 at org.eclipse.core.internal.resources.SaveManager.save(SaveManager.java:1108)
 at org.eclipse.core.internal.resources.SaveManager.save(SaveManager.java:1087)
 at org.eclipse.core.internal.resources.DelayedSnapshotJob.run(DelayedSnapshotJob.java:44)
 at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

!ENTRY org.eclipse.ui 4 0 2010-07-12 16:54:56.109
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.OutOfMemoryError: PermGen space
 at java.lang.Class.getDeclaredMethods0(Native Method)
 at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
 at java.lang.Class.getMethod0(Unknown Source)
 at java.lang.Class.getMethod0(Unknown Source)
 at java.lang.Class.getMethod0(Unknown Source)
 at java.lang.Class.getMethod0(Unknown Source)
 at java.lang.Class.getMethod0(Unknown Source)
 at java.lang.Class.getMethod0(Unknown Source)
 at java.lang.Class.getMethod(Unknown Source)
 at org.eclipse.ui.internal.handlers.WidgetMethodHandler.getMethodToExecute(WidgetMethodHandler.java:265)
 at org.eclipse.ui.internal.handlers.WidgetMethodHandler.isHandled(WidgetMethodHandler.java:247)
 at org.eclipse.ui.internal.handlers.WidgetMethodHandler.updateEnablement(WidgetMethodHandler.java:57)
 at org.eclipse.ui.internal.handlers.WidgetMethodHandler$1.handleEvent(WidgetMethodHandler.java:49)
 at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
 at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1253)
 at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1052)
 at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
 at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1058)
 at org.eclipse.swt.widgets.Control.sendFocusEvent(Control.java:2618)
 at org.eclipse.swt.widgets.Widget.wmSetFocus(Widget.java:2402)
 at org.eclipse.swt.widgets.Control.WM_SETFOCUS(Control.java:4792)
 at org.eclipse.swt.widgets.Canvas.WM_SETFOCUS(Canvas.java:448)
 at org.eclipse.swt.widgets.Decorations.WM_SETFOCUS(Decorations.java:1748)
 at org.eclipse.swt.widgets.Control.windowProc(Control.java:4229)
 at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
 at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1598)
 at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2038)
 at org.eclipse.swt.widgets.Display.windowProc(Display.java:4886)
 at org.eclipse.swt.internal.win32.OS.BringWindowToTop(Native Method)
 at org.eclipse.swt.widgets.Decorations.bringToTop(Decorations.java:230)
 at org.eclipse.swt.widgets.Shell.open(Shell.java:1194)
 at org.eclipse.jface.window.Window.open(Window.java:797)

!ENTRY org.eclipse.ui 4 4 2010-07-12 16:55:02.046
!MESSAGE An internal error has occurred.
!STACK 0
java.lang.OutOfMemoryError: PermGen space

!ENTRY org.eclipse.ui 4 0 2010-07-12 16:55:09.781
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.OutOfMemoryError: PermGen space
!SESSION 2010-07-12 17:17:04.234 -----------------------------------------------
eclipse.buildId=I20100608-0911
java.version=1.6.0_21
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=de_DE
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.jee.product

!ENTRY org.eclipse.core.resources 2 10035 2010-07-12 17:17:05.359
!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.

!ENTRY org.eclipse.jdt.core 4 4 2010-07-12 17:17:05.843
!MESSAGE Unable to read variable and containers file
!STACK 0
java.io.EOFException
 at java.io.DataInputStream.readInt(DataInputStream.java:375)
 at org.eclipse.jdt.internal.core.JavaModelManager$VariablesAndContainersLoadHelper.loadInt(JavaModelManager.java:3344)
 at org.eclipse.jdt.internal.core.JavaModelManager$VariablesAndContainersLoadHelper.loadProjects(JavaModelManager.java:3373)
 at org.eclipse.jdt.internal.core.JavaModelManager$VariablesAndContainersLoadHelper.load(JavaModelManager.java:3212)
 at org.eclipse.jdt.internal.core.JavaModelManager.loadVariablesAndContainers(JavaModelManager.java:3049)
 at org.eclipse.jdt.internal.core.JavaModelManager.startup(JavaModelManager.java:4705)
 at org.eclipse.jdt.core.JavaCore.start(JavaCore.java:5048)
 at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
 at java.security.AccessController.doPrivileged(Native Method)
 at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
 at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
 at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:370)
 at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:284)
 at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:417)
 at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:265)
 at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:106)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:453)
 at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
 at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:469)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
 at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
 at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:338)
 at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:232)
 at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1197)
 at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
 at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:904)
 at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
 at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
 at org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.addModifyListener(PreferenceServiceRegistryHelper.java:90)
 at org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.getModifyListeners(PreferenceServiceRegistryHelper.java:186)
 at org.eclipse.core.internal.preferences.PreferencesService.firePreApplyEvent(PreferencesService.java:440)
 at org.eclipse.core.internal.preferences.PreferencesService.applyPreferences(PreferencesService.java:122)
 at org.eclipse.core.internal.resources.ProjectPreferences.read(ProjectPreferences.java:234)
 at org.eclipse.core.internal.resources.ProjectPreferences.updatePreferences(ProjectPreferences.java:302)
 at org.eclipse.core.internal.resources.File.updateMetadataFiles(File.java:414)
 at org.eclipse.core.internal.localstore.RefreshLocalVisitor.visit(RefreshLocalVisitor.java:297)
 at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:108)
 at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:824)
 at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:808)
 at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshRoot(FileSystemResourceManager.java:855)
 at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:801)
 at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1661)
 at org.eclipse.core.internal.refresh.RefreshJob.runInWorkspace(RefreshJob.java:166)
 at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
 at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

!ENTRY org.eclipse.ui 4 4 2010-07-12 17:20:11.921
!MESSAGE Could not create action delegate for id: org.maven.ide.eclipse.editor.RenameProjectAction

!ENTRY org.eclipse.ui 4 4 2010-07-12 17:20:11.921
!MESSAGE Internal plug-in action delegate error on creation.
!STACK 0
java.lang.OutOfMemoryError: PermGen space
 at java.lang.ClassLoader.defineClass1(Native Method)
 at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
 at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
 at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:580)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:550)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:481)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:469)
 at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
 at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
 at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393)
 at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:466)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
 at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
 at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
 at java.lang.Class.getDeclaredConstructors0(Native Method)
 at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
 at java.lang.Class.getConstructor0(Class.java:2699)
 at java.lang.Class.newInstance0(Class.java:326)
 at java.lang.Class.newInstance(Class.java:308)
 at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:184)
 at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:904)
 at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
 at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
 at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:259)
 at org.eclipse.ui.internal.PluginAction.createDelegate(PluginAction.java:122)
 at org.eclipse.ui.internal.PluginAction.selectionChanged(PluginAction.java:275)
 at org.eclipse.ui.internal.PluginAction.<init>(PluginAction.java:112)
 at org.eclipse.ui.internal.ObjectPluginAction.<init>(ObjectPluginAction.java:83)
 at org.eclipse.ui.internal.ActionDescriptor.createAction(ActionDescriptor.java:272)

I can't explain that to myself, there are a lot of reasons. Maybe somebody had simialar problems and can help me with that.

Update:

:-( After 30 minutes it startet leaking again :-(

It seems like Eclipse remains in an endless loop. The task 'Eclipse' uses ~50% of my CPU continously.

That's very strange. Here is my eclipse.ini:

-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-XX:MaxPermSize=256m
-showsplash
org.eclipse.platform
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms128m
-Xmx512m

Maybe there is a problem ?!? Does somebody has an Idea?

EDIT: I need to say that it's better. That problem occurs very rarely.

Update 2:

May Somebaody help me with configuring my eclips.ini please. So that I can work with JDK 6-21... Or mshould I maybe use an older version?

That's it so far:

-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-XX:PermSize=128M
-XX:MaxPermSize=256m
-showsplash
org.eclipse.platform
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms128m
-Xmx512m

Okay I followed shipmaster's recommend and posted another question: Trouble with Eclipse

like image 788
Sven Avatar asked Dec 05 '22 02:12

Sven


1 Answers

Another option, that has worked for me, is to adding in Run->Debug configurations...->(Your Maven build)->JRE tab->VM arguments some VM arguments:

-Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:NewSize=128m

Hope this help...

Updated:

Or even, you can add the same arguments to:

Window->Preferences->Java->Installed JREs->(Your preferred JDK or the JRE used by your Maven instance)->Default VM Arguments

like image 184
Jesfre Avatar answered Dec 28 '22 20:12

Jesfre