There isn't so much an output directory in this application. It's built on top of the eclipse framework. (Similar to:
http://udig.refractions.net/ It's another application built on the eclipse framework) I originally put everything in the plugins directory. Nothing got detected because it wasn't an Eclipse Plugin. I repackaged them as Eclipse plugins, and put everything in the plugins directory. The plugins aren't copied to any kind of output directory.
That's more of a production configuration. I was thinking that you should start with baby steps. If you create an Eclipse plug-in project, you can set it to compile your class files into an output directory that will automatically be included in the classpath when you run the subordinate/child Eclipse that uses your project. Sometimes it gets confusing for people because there are two versions of Eclipse running with some common classes and some unique classes: those in the plugins directory and those in the output directory. When you run (or debug) the Eclipse plug-in project, Eclipse knows how to set things up correctly.
Not that you need to start at the beginning of these steps; however, I suggest using the following steps to get running with Xith inside Eclipse:
- Run the Xith demos located in the toolkit project
- Create Eclipse plug-in project using the "Hello World" plug-in project wizard
- Execute the project to get a feel for how it creates a parent/child environment with all your standard plug-ins from the plug-ins directory in both environments plus your "Hello World" view only available in the child
- Either place the Xith libs in the libs directory of the project or unzip all the files into a subdirectory of libs inside the project
- Initialize Xith as you did above
- Execute to make sure everything runs without a stack trace
- Code and execute whatever demo code you like until you get a good feel for camera positioning and placing objects in the Xith world
- Package your plug-in correctly
Each of these steps teaches something and/or reveals the status of your development environment. In my mind, you're trying the last step without all the intermediate steps.
I have been able to run the demos on this computer. I could create a project and create a Java app that uses Xith3D. It wouldn't be built on the eclipse framework though. I could just write a simple java app with everything in the classpath. I'd suspect it would work, just like the demos.
Good, that indicates that your environment is compatible. I don't see a particular reason to write a standalone java app.
I suspect the problem is that I didn't package the plugins correctly. I think I'm missing a dependency somewhere. For each plugin that uses any other plugin, you have to add a "Require-Bundle" to the manifest for everything it requires. I think I might be missing one of those for something that needs gluegen.
As you have discovered, this piece is hard due to the minimal feedback. That's why I suggest the steps outlined above combined with source code control (SVN, CVS, etc.) Even without an external system, Eclipse has a built-in 7-day history feature that works well for demo sized code.
One thing I could try would be to include the X3D jars to the classpath rather than trying to load them as plugins. I'm not sure if this will work correctly, but it's worth a shot. I think I'll give that a shot next and see what happens.
Depending how you manipulate your classpath, this can be problematic for many people. I suggest allowing Eclipse to handle this step (#6 in my list).
Hope this advice leads you somewhere useful.