"com.sun.j3d",
"com.sun.opengl",
"com.sun.gluegen.runtime",
"javax.media.opengl",
"com.microcrowd.loader.java3d"};
ClassLoader java3DClassLoader = new ExtensionsClassLoader(
furnitureLibraryEditorBootstrapClass.getClassLoader(),
furnitureLibraryEditorBootstrapClass.getProtectionDomain(),
extensionJarsAndDlls.toArray(new String [extensionJarsAndDlls.size()]), applicationPackages);
String applicationClassName = "com.eteks.furniturelibraryeditor.FurnitureLibraryEditor";
Class<?> applicationClass = java3DClassLoader.loadClass(applicationClassName);
Method applicationClassMain =
applicationClass.getMethod("main", Array.newInstance(String.class, 0).getClass());
// Call application class main method with reflection
applicationClassMain.invoke(null, new Object [] {args});
}