问题
I recently upgraded my Eclipse 3.6 instance to 3.7.
I wanted to view the Help -> About Eclipse option, but this dialog does not show up.
Ran it with the -consoleLog -debug option to understand what could be going wrong. This is what I see, any thoughts?
Btw, I have posted this question on the Eclipse Platform discussion forum too: http://www.eclipse.org/forums/index.php/m/692851/#msg_692851
kiran@skiran:~/code/dx-4.2.0$ ~/programs/open/eclipse/eclipse -consoleLog -debug
Start VM: -Djava.library.path=/usr/lib/jni
-Dosgi.requiredJavaVersion=1.5
-XX:MaxPermSize=256m
-Xms40m
-Xmx512m
-Djava.class.path=/home/kiran/programs/open/eclipse//plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
-os linux
-ws gtk
-arch x86
-showsplash /home/kiran/programs/open/eclipse//plugins/org.eclipse.platform_3.7.0.v201106131736/splash.bmp
-launcher /home/kiran/programs/open/eclipse/eclipse
-name Eclipse
--launcher.library /home/kiran/programs/open/eclipse//plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.1.100.v20110505/eclipse_1407.so
-startup /home/kiran/programs/open/eclipse//plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.overrideVmargs
-product org.eclipse.epp.package.jee.product
-consoleLog
-debug
-vm /usr/lib/j2re1.6-ibm/jre/bin/j9vm/libjvm.so
-vmargs
-Djava.library.path=/usr/lib/jni
-Dosgi.requiredJavaVersion=1.5
-XX:MaxPermSize=256m
-Xms40m
-Xmx512m
-Djava.class.path=/home/kiran/programs/open/eclipse//plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
Install location:
file:/home/kiran/programs/open/eclipse/
Configuration file:
file:/home/kiran/programs/open/eclipse/configuration/config.ini loaded
Configuration location:
file:/home/kiran/programs/open/eclipse/configuration/
Framework located:
file:/home/kiran/programs/open/eclipse/plugins/org.eclipse.osgi_3.7.0.v20110613.jar
Loading extension: reference:file:org.eclipse.equinox.weaving.hook_1.0.0.v20100108.jar
eclipse.properties not found
Loading extension: reference:file:javax.transaction_1.1.1.v201105210645.jar
eclipse.properties not found
Framework classpath:
file:/home/kiran/programs/open/eclipse/plugins/org.eclipse.osgi_3.7.0.v20110613.jar
file:/home/kiran/programs/open/eclipse/plugins/
file:/home/kiran/programs/open/eclipse/plugins/org.eclipse.equinox.weaving.hook_1.0.0.v20100108.jar
file:/home/kiran/programs/open/eclipse/plugins/javax.transaction_1.1.1.v201105210645.jar
Splash location:
/home/kiran/programs/open/eclipse//plugins/org.eclipse.platform_3.7.0.v201106131736/splash.bmp
Debug options:
file:/home/kiran/code/dx-4.2.0/.options not found
Time to load bundles: 21
Starting application: 2076
startup diagnostics: previous version = 1.1.0.201105291637-milestones-M01
startup diagnostics: CURRENT version = 1.1.0.201105291637-milestones-M01
Application Started: 11900
!SESSION 2011-07-05 16:23:10.293 -----------------------------------------------
eclipse.buildId=I20110613-1736
java.fullversion=JRE 1.6.0 IBM J9 2.4 Linux x86-32 jvmxi3260sr9-20101124_69295 (JIT enabled, AOT enabled)
J9VM - 20101124_069295
JIT - r9_20101028_17488ifx2
GC - 20101027_AA
BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_IN
Framework arguments: -product org.eclipse.epp.package.jee.product
Command-line arguments: -os linux -ws gtk -arch x86 -product org.eclipse.epp.package.jee.product -consoleLog -debug
!ENTRY org.eclipse.ui.workbench 4 0 2011-07-05 16:23:26.568
!MESSAGE An unexpected exception was thrown.
!STACK 0
java.lang.NullPointerException
at java.io.FilterInputStream.close(FilterInputStream.java:166)
at org.eclipse.ui.internal.about.AboutBundleGroupData.getFeatureImageCrc(AboutBundleGroupData.java:104)
at org.eclipse.ui.internal.about.AboutFeaturesButtonManager.add(AboutFeaturesButtonManager.java:61)
at org.eclipse.ui.internal.dialogs.AboutDialog.createFeatureButton(AboutDialog.java:433)
at org.eclipse.ui.internal.dialogs.AboutDialog.createFeatureImageButtonRow(AboutDialog.java:427)
at org.eclipse.ui.internal.dialogs.AboutDialog.createDialogArea(AboutDialog.java:340)
at org.eclipse.jface.dialogs.Dialog.createContents(Dialog.java:760)
at org.eclipse.jface.window.Window.create(Window.java:431)
at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1089)
at org.eclipse.jface.window.Window.open(Window.java:790)
at org.eclipse.ui.internal.about.AboutHandler.execute(AboutHandler.java:32)
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:1258)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3588)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3209)
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:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
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)
回答1:
It can depends on the plugins you had at the time of the upgrade.
For instance, Eclipse bug 347642 has been closed as "Not Eclipse" because of a bug coming from the Scala plugin.
(See this thread on Scala user.group)
So it is unlikely to be related to Eclipse Indigo alone, but rather to some side effect from a plugin.
On a side note, I always prefer installing a fresh Eclipse alongside my current one, and referencing the same workspace, in order to test the new version alone: if there are too many issues, I can always safely get back to my previous (untouched) Eclipse version.
来源:https://stackoverflow.com/questions/6583544/eclipse-3-7-indigo-about-dialog-error