Error in Nifty Libs - No class de/lessvoid/nifty/tools/resourceloader/ResourceLoader

I have just rebuilt an old project and re-linked new libraries. I am getting an error, which indicates that NiftyJmeDisplay attempts to call the function “ResourceLoader” - of course there is no such function but instead “NiftyResourceLoader”. I thought I’ve cleaned up all old libraries from everywhere (and ensured that roaming libraries have been deleted and all global libraries point to jmonkeyplatform/lib). Here is the error:



SEVERE: Uncaught exception thrown in Thread[LWJGL Renderer Thread,5,main]
java.lang.NoClassDefFoundError: de/lessvoid/nifty/tools/resourceloader/ResourceLoader
at com.jme3.niftygui.NiftyJmeDisplay.(NiftyJmeDisplay.java:101)
at com.aristoberry.fpa.Statue.simpleInitApp(Statue.java:144)
at com.jme3.app.SimpleApplication.initialize(SimpleApplication.java:230)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.initInThread(LwjglAbstractDisplay.java:129)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:205)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: de.lessvoid.nifty.tools.resourceloader.ResourceLoader
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 6 more
14/05/2012 8:13:37 PM com.jme3.renderer.lwjgl.LwjglRenderer cleanup

Nope, with the latest updates everything works fine. Did you change the preset libraries at some point? Then they won’t be updated.

Edit: so if i got you right you did change them to make them point to the libs n the application folder? Bummer, then you basically disabled automatic updates of the libs altogether and force using the libs that come with vanilla beta 3.0. You can try and remedy that by deleting the appropriate properties files in the SDK settings folder.

I had lots of other problems with that project, after solving one loader error I was getting another. All of these have been magically resolved by creating a clean project and copying all of the project resources into a new directory. So this is all good. I can see that the jmonkeyplatform/libs get updated so I think it is just fine. However, I’ve noticed that before my global libraries were all pointing to the .jmonkeyplatform in the roaming area, which I deleted. I hope this was an OK thing to do (no libraries seem to be found in there anymore).

It uses the settings folder when the application folder isn’t writable or you select “force install into shared directories” in Tools->Plugins->Settings.

Thanks, it worked.