CodingSpectator
CodingSpectator copied to clipboard
CodingSpectator does not install on an Eclipse owned by root
CodingSpectator has failed to upload data from one of the workspaces of a participant. The participant has reported the following exceptions in the error log.
Message: Unhandled event loop exception Trace: java.lang.NoClassDefFoundError: org/eclipse/ltk/core/refactoring/codingspectator/RunningModes at edu.illinois.codingspectator.monitor.ui.AuthenticationPrompter.getRepositoryURL(AuthenticationPrompter.java:118) at edu.illinois.codingspectator.monitor.ui.submission.Submitter.authenticateAndInitialize(Submitter.java:63) at edu.illinois.codingspectator.monitor.ui.submission.Submitter.promptUntilValidCredentialsOrCanceled(Submitter.java:145) at edu.illinois.codingspectator.monitor.ui.Uploader.promptUntilValidCredentialsOrCanceled(Uploader.java:40) at edu.illinois.codingspectator.monitor.ui.WorkbenchPreferencePage$1.widgetSelected(WorkbenchPreferencePage.java:89) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:234) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3540) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3161) at org.eclipse.jface.window.Window.runEventLoop(Window.java:825) at org.eclipse.jface.window.Window.open(Window.java:801) at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.open(WorkbenchPreferenceDialog.java:211) at org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:65) at org.eclipse.jface.action.Action.runWithEvent(Action.java:498) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3540) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3161) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) at org.eclipse.equinox.launcher.Main.main(Main.java:1383) Caused by: java.lang.ClassNotFoundException: org.eclipse.ltk.core.refactoring.codingspectator.RunningModes at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506) 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) ... 43 more
Message: Unable to execute early startup code for an extension Trace: java.lang.NoClassDefFoundError: org/eclipse/ltk/core/refactoring/codingspectator/RunningModes at edu.illinois.codingspectator.monitor.ui.Activator.shouldUpload(Activator.java:106) at edu.illinois.codingspectator.monitor.ui.Activator.earlyStartup(Activator.java:96) at org.eclipse.ui.internal.EarlyStartupRunnable.runEarlyStartup(EarlyStartupRunnable.java:87) at org.eclipse.ui.internal.EarlyStartupRunnable.run(EarlyStartupRunnable.java:66) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.Workbench$59.run(Workbench.java:2409) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) Caused by: java.lang.ClassNotFoundException: org.eclipse.ltk.core.refactoring.codingspectator.RunningModes at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506) 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) ... 7 more
@Wanderer777, @vazexqi: Participant cs-105 uses Eclipse Class (3.6.1) and AJDT 2.1.2. CodingSpectator 1.0.0.201105300951 has failed to fully install on the Eclipse of this participant.
I downloaded Eclipse SDK 3.6.1 from http://archive.eclipse.org/eclipse/downloads/drops/R-3.6.1-201009090800/index.php and AJDT from http://download.eclipse.org/tools/ajdt/36/update/ajdt_2.1.3_for_eclipse_3.6.zip. I installed AJDT and then CodingSpectator 1.0.0.201105300951 without seeing the problems that the participant has reported.
@Wanderer777, @vazexqi: Participant cs-508 has encountered the same exception:
java.lang.NoClassDefFoundError: org/eclipse/ltk/core/refactoring/codingspectator/RunningModes at edu.illinois.codingspectator.monitor.ui.AuthenticationPrompter.getRepositoryURL(AuthenticationPrompter.java:118) at edu.illinois.codingspectator.monitor.ui.submission.Submitter.authenticateAndInitialize(Submitter.java:63) at edu.illinois.codingspectator.monitor.ui.submission.Submitter.promptUntilValidCredentialsOrCanceled(Submitter.java:145) at edu.illinois.codingspectator.monitor.ui.Uploader.promptUntilValidCredentialsOrCanceled(Uploader.java:40) at edu.illinois.codingspectator.monitor.ui.WorkbenchPreferencePage$1.widgetSelected(WorkbenchPreferencePage.java:89) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:240) 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.Display.runDeferredEvents(Display.java:4165) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754) at org.eclipse.jface.window.Window.runEventLoop(Window.java:825) at org.eclipse.jface.window.Window.open(Window.java:801) at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.open(WorkbenchPreferenceDialog.java:215) at org.eclipse.ui.internal.handlers.ShowPreferencePageHandler.execute(ShowPreferencePageHandler.java:54) at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:293) at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476) at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508) at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169) at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:241) at org.eclipse.ui.internal.actions.CommandAction.runWithEvent(CommandAction.java:157) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411) 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.Display.runDeferredEvents(Display.java:4165) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577) at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
Update: Participant cs-508 told me on Nov. 1, 2011 that he had managed to install CodingSpectator.
Participant cs-105 kindly let us troubleshoot the installation of CodingSpectator. This participant has installed Eclipse in a "root" space. That is, the owner user and group of all of the installation files of Eclipse are "root". But, the user runs Eclipse with the permissions of a regular user. As a result, all third-party plug-ins that the participant installs on Eclipse go to the home folder of the participant not inside the Eclipse installation folder.
When the participant installed a fresh copy of Eclipse in a "root" space and tried to install CodingSpectator, Eclipse reported the following error message:
Cannot complete the install because of a conflicting dependency. Software being installed: CodingSpectator 1.0.0.201107172332 (edu.illinois.codingspectator.feature.group 1.0.0.201107172332) Software currently installed: Shared profile 1.0.0.1284044641500 (SharedProfile_SDKProfile 1.0.0.1284044641500) Only one of the following can be installed at once: Java Development Tools UI 3.6.1.r361_v20100825-0800 (org.eclipse.jdt.ui 3.6.1.r361_v20100825-0800) Java Development Tools UI 3.6.0.201107172332 (org.eclipse.jdt.ui 3.6.0.201107172332) Cannot satisfy dependency: From: Shared profile 1.0.0.1284044641500 (SharedProfile_SDKProfile 1.0.0.1284044641500) To: org.eclipse.jdt.feature.group [3.6.1.r361_v20100714-0800-7z8XFUSFLFlmgLc5z-Bvrt8-HVkH] Cannot satisfy dependency: From: Shared profile 1.0.0.1284044641500 (SharedProfile_SDKProfile 1.0.0.1284044641500) To: org.eclipse.jdt.ui [3.6.1.r361_v20100825-0800] Cannot satisfy dependency: From: CodingSpectator 1.0.0.201107172332 (edu.illinois.codingspectator.feature.group 1.0.0.201107172332) To: edu.illinois.codingspectator.jdt.patch.feature.group [1.0.0.201107172332] Cannot satisfy dependency: From Patch: edu.illinois.codingspectator.jdt.patch.feature.group 1.0.0.201107172332 Eclipse Java Development Tools 3.6.1.r361_v20100714-0800-7z8XFUSFLFlmgLc5z-Bvrt8-HVkH (org.eclipse.jdt.feature.group 3.6.1.r361_v20100714-0800-7z8XFUSFLFlmgLc5z-Bvrt8-HVkH) To: org.eclipse.jdt.ui [3.6.0.201107172332]
And, when the participant tried to install CodingSpectator on the original Eclipse, which is in a "root" space, Eclipse reported the following error message:
Cannot complete the install because of a conflicting dependency. Software being installed: CodingSpectator 1.0.0.201107172332 (edu.illinois.codingspectator.feature.group 1.0.0.201107172332) Software currently installed: Shared profile 1.0.0.1284044641500 (SharedProfile_SDKProfile 1.0.0.1284044641500) Only one of the following can be installed at once: Java Development Tools Core 3.6.0.201107172332 (org.eclipse.jdt.core 3.6.0.201107172332) Java Development Tools Core 3.6.0.v_A58 (org.eclipse.jdt.core 3.6.0.v_A58) Java Development Tools Core 3.6.2.v_A76_R36x (org.eclipse.jdt.core 3.6.2.v_A76_R36x) Java Development Tools Core 3.6.1.v_A68_R36x (org.eclipse.jdt.core 3.6.1.v_A68_R36x) Cannot satisfy dependency: From: Shared profile 1.0.0.1284044641500 (SharedProfile_SDKProfile 1.0.0.1284044641500) To: org.eclipse.jdt.core [3.6.1.v_A68_R36x] Cannot satisfy dependency: From: Shared profile 1.0.0.1284044641500 (SharedProfile_SDKProfile 1.0.0.1284044641500) To: org.eclipse.jdt.feature.group [3.6.1.r361_v20100714-0800-7z8XFUSFLFlmgLc5z-Bvrt8-HVkH] Cannot satisfy dependency: From: CodingSpectator 1.0.0.201107172332 (edu.illinois.codingspectator.feature.group 1.0.0.201107172332) To: edu.illinois.codingspectator.jdt.patch.feature.group [1.0.0.201107172332] Cannot satisfy dependency: From Patch: edu.illinois.codingspectator.jdt.patch.feature.group 1.0.0.201107172332 Eclipse Java Development Tools 3.6.1.r361_v20100714-0800-7z8XFUSFLFlmgLc5z-Bvrt8-HVkH (org.eclipse.jdt.feature.group 3.6.1.r361_v20100714-0800-7z8XFUSFLFlmgLc5z-Bvrt8-HVkH) To: org.eclipse.jdt.core [3.6.0.201107172332]
But, the user successfully installed CodingSpectator on an Eclipse in a "user" space.
@Wanderer777:
Participant cs-506 has reported a similar problem:
Cannot complete the install because of a conflicting dependency. Software being installed: CodingSpectator 1.0.0.201110132018 (edu.illinois.codingspectator.feature.group 1.0.0.201110132018) Software currently installed: Shared profile 1.0.0.1317160468326 (SharedProfile_PlatformProfile 1.0.0.1317160468326) Software currently installed: Eclipse CVS Client 1.3.100.dist-7B78FHk9exZ_ (org.eclipse.cvs.feature.group 1.3.100.dist-7B78FHk9exZ_) Only one of the following can be installed at once: Core Resource Management 3.7.100.201110132018 (org.eclipse.core.resources 3.7.100.201110132018) Core Resource Management 3.7.100.dist (org.eclipse.core.resources 3.7.100.dist) Cannot satisfy dependency: From: Shared profile 1.0.0.1317160468326 (SharedProfile_PlatformProfile 1.0.0.1317160468326) To: org.eclipse.core.resources [3.7.100.dist] Cannot satisfy dependency: From: CodingSpectator 1.0.0.201110132018 (edu.illinois.codingspectator.feature.group 1.0.0.201110132018) To: edu.illinois.codingspectator.platform.patch.feature.group [1.0.0.201110132018] Cannot satisfy dependency: From: Eclipse CVS Client 1.3.100.dist-7B78FHk9exZ_ (org.eclipse.cvs.feature.group 1.3.100.dist-7B78FHk9exZ_) To: org.eclipse.platform.feature.group 3.7.0 Cannot satisfy dependency: From Patch: edu.illinois.codingspectator.platform.patch.feature.group 1.0.0.201110132018 Eclipse Platform 3.7.0.dist-9pF7UHbtFs8vdhkukhQodUHz-siCnGGYotSeiRH (org.eclipse.platform.feature.group 3.7.0.dist-9pF7UHbtFs8vdhkukhQodUHz-siCnGGYotSeiRH) To: org.eclipse.core.resources [3.7.100.201110132018] I'm using Eclipse 3.7.0 (Build id: I20110613-1736) on Ubuntu 11.04.
It is a known issue that CodingSpectator doesn't install on an instance of Eclipse owned by root.
@Wanderer777:
The plug-in org.eclipse.core.resources [3.7.100.dist]
is not specific to Indigo SR1. Both Indigo and Indigo SR1 contain the following plug-in:
Core Resource Management 3.7.100.v20110510-0712 org.eclipse.core.resources
@vazexqi, @Wanderer777:
I was able to reproduce this problem and resolve it by running Eclipse as root. Bug 339659 gave me the idea of this workaround.
Participant cs-105 reported the following when he or she installed CodingSpectator by running Eclipse as root:
Unfortunately when I restarted Eclipse as myself (not root), nothing worked, every action led to Eclipse hanging and reporting a Java Heap Space error after a minute or so. So I started Eclipse as root again and uninstalled coding spectator. Now when I start Eclipse as myself, things are back to normal...
It looks like installing CodingSpectator by running as root is not a good solution. This is because when I install CodingSpectator as root, all the created files are created with root permissions. So when I restart Eclipse as myself, those files cannot be edited/changed. In fact, even existing files that are changed during the process are given root permissions. So I just had to go to my workspace and change the owner/group of all the files in .metadata to my user/group because they had been changed to root.