Sorry I’m a bit slow on the replies here. Brain has been elsewhere and keep forgetting to check these forums.
The way the plugin is constructed uses a host plugin and a plugin fragment for the individual per-platform bits of code. This is the same way that SWT works itself. Basically there is a very small skeleton plugin that is a placeholder for the real code. This skeleton is what other plugins refer to (you’ll see they always ask for org.eclipse.swt for example, not org.eclipse.swt.win32.win32). The Fragment then provides the real implementation without application code needing to know exactly which platform you’re on.
In your plugin loading, make sure that you specifiy org.j3d.opengl.swt as the plugin that is required in the Required-Bundles attribute. Do not have it reference the platform-specific plugin name. If you are not using the automatic update manager in Eclipse, then you need to specify both the generic host plugin and the platform-specific plugin name in your config.ini file.