Skip to main content

Eclipse Annoyance - Failures with Plugin Development using Eclipse 3.1

I'm a big Eclipse fan, and have been since version 2. I've been working steadily with Eclipse 3.1 since milestone 5. Right now I'm up to release candidate 2. I've been quite happy with the changes, in particular the increases in performance on both Windows and Linux. But one thing I have not been happy about is the apparent breakage in plugin development.

One excellent feature of Eclipse is its deep support for Eclipse plugin development through its plugin development environment (PDE). By following along with the excellent wizards, you can quickly build a framework for plugin development that is capable of being immediately launched. At least that's the way it worked until the first release candidate (RC1). Starting with RC1, I noticed that my older plugin development project suddenly failed to work. I quickly decided to create a simple plugin project using Hello World and then compare the two, looking to see what had changed between 3.0 and 3.1 RC1. But that didn't work either. No matter what I do, I cannot create a plugin that works. Every time I go to launch the plugin I get the following failure message:


!SESSION 2005-06-17 09:20:04.116 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.5.0_03
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Framework arguments: -application org.eclipse.ui.ide.workbench -pdelaunch
Command-line arguments: -application org.eclipse.ui.ide.workbench -data C:\Documents and Settings\beebew\runtime-workspace -dev file:C:/Documents and Settings/beebew/workspace/.metadata/.plugins/org.eclipse.pde.core/Favorites/dev.properties -pdelaunch -os win32 -ws win32 -arch x86

!ENTRY org.eclipse.osgi 2005-06-17 09:20:06.400
!MESSAGE An error occurred while automatically activating bundle org.eclipse.ui.workbench (178).
!STACK 0
org.osgi.framework.BundleException: The activator org.eclipse.ui.internal.WorkbenchPlugin for bundle org.eclipse.ui.workbench is invalid
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator( AbstractBundle.java:151)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start( BundleContextImpl.java:965)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker( BundleHost.java:321)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start( AbstractBundle.java:266)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass( EclipseClassLoader.java:112)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass( BundleLoader.java:337)
at org.eclipse.osgi.framework.internal.core.SingleSourcePackage.loadClass( SingleSourcePackage.java:37)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:386)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:350)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass( AbstractClassLoader.java:78)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.defineClass( DefaultClassLoader.java:370)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.defineClass( EclipseClassLoader.java:223)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findClassImpl( DefaultClassLoader.java:343)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findClass( DefaultClassLoader.java:235)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.findLocalClass( AbstractClassLoader.java:183)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.basicFindLocalClass( EclipseClassLoader.java:137)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass( EclipseClassLoader.java:78)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass( BundleLoader.java:337)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:389)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:350)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass( AbstractClassLoader.java:78)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass( BundleLoader.java:275)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass( BundleHost.java:227)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator( AbstractBundle.java:144)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start( BundleContextImpl.java:965)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker( BundleHost.java:321)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start( AbstractBundle.java:266)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass( EclipseClassLoader.java:112)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass( BundleLoader.java:337)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:389)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:350)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass( AbstractClassLoader.java:78)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass( BundleLoader.java:275)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass( BundleHost.java:227)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass( AbstractBundle.java:1259)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:152)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:142)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:129)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension( ConfigurationElementHandle.java:48)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run( PlatformActivator.java:222)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
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:585)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
at org.eclipse.core.launcher.Main.run(Main.java:973)
at org.eclipse.core.launcher.Main.main(Main.java:948)
Caused by: java.lang.NoClassDefFoundError: org/eclipse/swt/SWTError
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
at java.lang.Class.getConstructor0(Class.java:2640)
at java.lang.Class.newInstance0(Class.java:321)
at java.lang.Class.newInstance(Class.java:303)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator( AbstractBundle.java:146)
... 55 more
Root exception:
java.lang.NoClassDefFoundError: org/eclipse/swt/SWTError
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
at java.lang.Class.getConstructor0(Class.java:2640)
at java.lang.Class.newInstance0(Class.java:321)
at java.lang.Class.newInstance(Class.java:303)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator( AbstractBundle.java:146)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start( BundleContextImpl.java:965)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker( BundleHost.java:321)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start( AbstractBundle.java:266)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass( EclipseClassLoader.java:112)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass( BundleLoader.java:337)
at org.eclipse.osgi.framework.internal.core.SingleSourcePackage.loadClass( SingleSourcePackage.java:37)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:386)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:350)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass( AbstractClassLoader.java:78)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.defineClass( DefaultClassLoader.java:370)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.defineClass( EclipseClassLoader.java:223)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findClassImpl( DefaultClassLoader.java:343)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findClass( DefaultClassLoader.java:235)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.findLocalClass( AbstractClassLoader.java:183)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.basicFindLocalClass( EclipseClassLoader.java:137)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass( EclipseClassLoader.java:78)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass( BundleLoader.java:337)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:389)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:350)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass( AbstractClassLoader.java:78)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass( BundleLoader.java:275)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass( BundleHost.java:227)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator( AbstractBundle.java:144)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start( BundleContextImpl.java:965)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker( BundleHost.java:321)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start( AbstractBundle.java:266)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass( EclipseClassLoader.java:112)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass( BundleLoader.java:337)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:389)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:350)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass( AbstractClassLoader.java:78)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass( BundleLoader.java:275)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass( BundleHost.java:227)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass( AbstractBundle.java:1259)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:152)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:142)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:129)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension( ConfigurationElementHandle.java:48)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:222)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
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:585)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
at org.eclipse.core.launcher.Main.run(Main.java:973)
at org.eclipse.core.launcher.Main.main(Main.java:948)

!ENTRY org.eclipse.osgi 2005-06-17 09:20:06.430
!MESSAGE An error occurred while automatically activating bundle org.eclipse.ui.ide (173).
!STACK 0
org.osgi.framework.BundleException: The activator org.eclipse.ui.internal.ide.IDEWorkbenchPlugin for bundle org.eclipse.ui.ide is invalid
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator( AbstractBundle.java:151)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start( BundleContextImpl.java:965)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker( BundleHost.java:321)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start( AbstractBundle.java:266)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass( EclipseClassLoader.java:112)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass( BundleLoader.java:337)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:389)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:350)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass( AbstractClassLoader.java:78)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass( BundleLoader.java:275)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass( BundleHost.java:227)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass( AbstractBundle.java:1259)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:152)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:142)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:129)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension( ConfigurationElementHandle.java:48)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run( PlatformActivator.java:222)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
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:585)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
at org.eclipse.core.launcher.Main.run(Main.java:973)
at org.eclipse.core.launcher.Main.main(Main.java:948)
Caused by: java.lang.NoClassDefFoundError: org/eclipse/ui/plugin/AbstractUIPlugin
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.defineClass( DefaultClassLoader.java:370)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.defineClass( EclipseClassLoader.java:223)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findClassImpl( DefaultClassLoader.java:343)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findClass( DefaultClassLoader.java:235)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.findLocalClass( AbstractClassLoader.java:183)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.basicFindLocalClass( EclipseClassLoader.java:137)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass( EclipseClassLoader.java:78)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass( BundleLoader.java:337)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:389)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:350)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass( AbstractClassLoader.java:78)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass( BundleLoader.java:275)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass( BundleHost.java:227)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator( AbstractBundle.java:144)
... 27 more
Root exception:
java.lang.NoClassDefFoundError: org/eclipse/ui/plugin/AbstractUIPlugin
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.defineClass( DefaultClassLoader.java:370)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.defineClass( EclipseClassLoader.java:223)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findClassImpl( DefaultClassLoader.java:343)
at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findClass( DefaultClassLoader.java:235)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.findLocalClass( AbstractClassLoader.java:183)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.basicFindLocalClass( EclipseClassLoader.java:137)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass( EclipseClassLoader.java:78)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass( BundleLoader.java:337)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:389)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:350)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass( AbstractClassLoader.java:78)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass( BundleLoader.java:275)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass( BundleHost.java:227)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator( AbstractBundle.java:144)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start( BundleContextImpl.java:965)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker( BundleHost.java:321)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start( AbstractBundle.java:266)
at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass( EclipseClassLoader.java:112)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass( BundleLoader.java:337)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:389)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:350)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass( AbstractClassLoader.java:78)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass( BundleLoader.java:275)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass( BundleHost.java:227)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass( AbstractBundle.java:1259)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:152)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:142)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:129)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension( ConfigurationElementHandle.java:48)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run( PlatformActivator.java:222)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
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:585)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
at org.eclipse.core.launcher.Main.run(Main.java:973)
at org.eclipse.core.launcher.Main.main(Main.java:948)

!ENTRY org.eclipse.osgi 2005-06-17 09:20:06.440
!MESSAGE Application error
!STACK 1
org.eclipse.core.runtime.CoreException[1]: java.lang.ClassNotFoundException: org.eclipse.ui.internal.ide.IDEApplication
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:403)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass( BundleLoader.java:350)
at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass( AbstractClassLoader.java:78)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass( BundleLoader.java:275)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass( BundleHost.java:227)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass( AbstractBundle.java:1259)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:152)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:142)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension( ConfigurationElement.java:129)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension( ConfigurationElementHandle.java:48)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:222)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
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:585)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
at org.eclipse.core.launcher.Main.run(Main.java:973)
at org.eclipse.core.launcher.Main.main(Main.java:948)


One of the reasons I use Eclipse is its extensibility as well as its rich client platform (RCP) that allows the rapid creation of stand-alone applications. Both use the plugin architecture and supporting development tools, which currently appear to be broken. Release candidate 3 is coming out this weekend, and I'm going to check and see if this problem is addressed. But if it is not, then I'm going to seriously consider moving over full time to Netbeans. I've been living in both worlds as of late. As good as Netbeans has become (and it has become very, very good) I've been hesitant to move across because Eclipse as been as good if not better in some areas. But this is a major failure, especially in a release candidate, and it's a feature that's too important not to have in the final release. If Eclipse 3.1 hits the streets with this problem then I will make the official change to Netbeans. Netbeans still has some problems I'd like to see addressed, but it will improve over time.

Comments

  1. I came across this while trying to solve the very same problem on a linux box

    I am using the 3.1 final release. I use the "File->Export..." menu entry and then select "Eclipse Product".

    However after walking through the wizard I get a product that does not work. I keep getting the same SWTError class not found problem.

    If I look at the set of plugins copied across into my product: I get org.eclipse.swt_3.1.0.jar, but not org.eclipse.swt.gtk.linux.x86_3.1.0.jar. And it is the latter file that actually holds the SWTError class file.

    So the trick to make 3.1 products export correctly (at least on linux) is to also copy across the platform specific SWT file. You also have to edit <exported_product>/configuration/config.ini and put the platform jar file in the "osgi.bundles" entry. Then it will get picked up by the appropriate class loader.

    I hope that this helps.

    regards,
    Frugal

    ReplyDelete
  2. Seth MillikenSeptember 16, 2005

    I ran into this same problem on Mac OS X. I found what looks to be the right solution:

    - Click on "[productname].product"
    - Select the "Configuration" tab
    - Click "Add Required Plug-ins" button
    - Save and export

    This has the effect of adding the the correct swt jar as Frugal describes

    ReplyDelete

Post a Comment

All comments are checked. Comment SPAM will be blocked and deleted.

Popular posts from this blog

cat-in-a-box channels greta garbo

So I'm sitting at my computer, when I start to notice a racket in back. I ignore it for a while until I hear a load "thump!", as if something had been dropped on the floor, followed by a lot of loud rattling. I turn around and see Lucy in the box just having a grand old time, rolling around and rattling that box a good one. I grab the GX1 and snap a few shots before she notices me and the camera, then leaps out and back into her chair (which used to be my chair before she decided it was her chair).

Just like caring for Katie my black Lab taught me about dogs, caring for Lucy is teaching me about cats. She finds me fascinating, as I do her. And she expresses great affection and love toward me without coaxing. I try to return the affection and love, but she is a cat, and she takes a bat at me on occasion, although I think that's just her being playful. She always has her claws in when she does that.

She sits next to me during the evening in her chair while I sit in mi…

vm networking problem fixed

Over the weekend I upgraded to Windows 8.1, then discovered that networking for the virtual machines wouldn't work. Then I tried something incredibly simple and fixed the problem.

Checking the system I noticed that three VMware Windows services weren't running; VMnetDHCP, VMUSBArbService, and VMwareNatService. VMware Player allows you to install, remove, or fix an existing installation. I chose to try fixing the installation, and that fixed the problem. The services were re-installed/restarted, and the virtual machines had networking again.

Once network connectivity was established there was exactly one updated file for Ubuntu 13.10, a data file. This underscores how solid and finished the release was this time. Every other version of every other Linux installation I've ever dealt with has always been succeeded by boatloads of updates after the initial installation. But not this time.

Everything is working properly on my notebook. All's right with the world.

first night for the gingersnaps

The first night has passed and the two have managed to survive, in spite of what their tiny hearts might have thought when first arriving. Greebo, the larger of the two, has been in hiding the entire time so far. Ponder has spent the time zipping in and out of hiding spots, checking things out, and learning just how comfortable pillows are for resting your head.

During the night I felt the tiny body of Ponder hitting the bed as he leaped up on the side, and then climbed to the top to run around on top of me. At least once he play-attacked my fingers. He might be small but his claws are still quite sharp.

When I got up in the morning the bowl of cat kitten food was fairly well depleted. It's been refilled and fresh water put in the big dish on the floor. I'm assuming that both Greebo and Ponder are feeding and drinking. I have seen Greebo under the furniture peeking out at me when I went looking for him. I'm leaving him alone while he continues to adjust.

So far the guys h…