MAC OS X 1.7 Java SDK and jMonkey

So I upgraded to Java 1.7 (something I couldn’t control) and now my jMonkey application doesn’t work on my MAC OSX.

I looked around and there seems to be some problems with the 1.7 SDK and LWJGL as they’re not compatible. However, most of the threads from from 2012. I was wondering if there’s any simple fix for this issue so I can make it run on MAC w/o having to go back to 1.6

please advise

The current release uses and works fine with 1.7, just download and install the SDK that was released a few days ago.

1 Like

That’s great news. Not sure how I missed that.

thanks @normen

I updated but now I am getting the following error. Shouldn’t this class be included by default in the sdk? if not, how do I add it?

[java]java.lang.NoClassDefFoundError: de/lessvoid/nifty/batch/spi/BatchRenderBackend
at com.Visualizer.simpleInitApp(Visualizer.java:337)
at com.jme3.app.SimpleApplication.initialize(SimpleApplication.java:226)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.initInThread(LwjglAbstractDisplay.java:130)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:207)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.ClassNotFoundException: de.lessvoid.nifty.batch.spi.BatchRenderBackend
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
[/java]

edit: I am using eclipse btw

@garnaout said: I updated but now I am getting the following error. Shouldn't this class be included by default in the sdk? if not, how do I add it?

[java]java.lang.NoClassDefFoundError: de/lessvoid/nifty/batch/spi/BatchRenderBackend
at com.Visualizer.simpleInitApp(Visualizer.java:337)
at com.jme3.app.SimpleApplication.initialize(SimpleApplication.java:226)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.initInThread(LwjglAbstractDisplay.java:130)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:207)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.ClassNotFoundException: de.lessvoid.nifty.batch.spi.BatchRenderBackend
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
[/java]

Yeah it should, did you change your nifty library at some point? Then it will keep whatever settings you applied and not get updated.

I did… how can I override my changes and get the new nifty lib?

edit:

can you tell me which nifty version we’re using with the new SDK?

@garnaout said: I did... how can I override my changes and get the new nifty lib?

edit:

can you tell me which nifty version we’re using with the new SDK?

Can’t say the exact location from memory now… Look at your other unchanged libraries (lwjgl etc), they should be somewhere around there.

We use the last version Jens deemed compatible ^^ I think its 1.3.1

1 Like

Sorry again to keep coming back to this… so I fixed the nifty issue by uploading the right jar and now I am getting this error that I haven’t seen before (and not available on the forum): I get it after loading the scene and loading most of the objects and then crash…

[java]Feb 20, 2014 2:59:59 PM com.jme3.app.Application handleError
SEVERE: Uncaught exception thrown in Thread[LWJGL Renderer Thread,5,main]
java.lang.UnsupportedOperationException: Inconsistant comparison function
at com.jme3.util.ListSort.mergeHigh(ListSort.java:852)
at com.jme3.util.ListSort.mergeRuns(ListSort.java:476)
at com.jme3.util.ListSort.mergeCollapse(ListSort.java:405)
at com.jme3.util.ListSort.sort(ListSort.java:233)
at com.jme3.renderer.queue.GeometryList.sort(GeometryList.java:145)
at com.jme3.renderer.queue.RenderQueue.renderGeometryList(RenderQueue.java:318)
at com.jme3.renderer.queue.RenderQueue.renderQueue(RenderQueue.java:374)
at com.jme3.renderer.RenderManager.renderViewPortQueues(RenderManager.java:763)
at com.jme3.renderer.RenderManager.flushQueue(RenderManager.java:719)
at com.jme3.renderer.RenderManager.renderViewPort(RenderManager.java:983)
at com.jme3.renderer.RenderManager.render(RenderManager.java:1029)
at com.jme3.app.SimpleApplication.update(SimpleApplication.java:252)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.runLoop(LwjglAbstractDisplay.java:151)
at com.jme3.system.lwjgl.LwjglDisplay.runLoop(LwjglDisplay.java:185)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:228)
at java.lang.Thread.run(Thread.java:744)[/java]

… just delete your settings folder and then start the SDK, you seem to have changed more than that library. If you want a new library, next time just make a new one isntead of modifying the existing ones.

Noted.

So I am using maven , I deleted all my local repository and downloaded it again, I cleaned and compiled and still the same issue :S

Maven? :-? Why that? I son’t know how you would use the libraries in that context, sorry.