I'm using jME-Physics 2.1 on Mac OS X (Mac Intel) and I get this error, when I try to launch Lesson1 :
9 f?vr. 2008 12:30:26 org.odejava.Odejava <clinit>
GRAVE: Native code library (32 and 64 bit library) failed to load: java.lang.UnsatisfiedLinkError: /Library/Java/Extensions/libodejava.jnilib:
java.lang.UnsatisfiedLinkError: /Library/Java/Extensions/libodejava.jnilib:
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1660)
at java.lang.Runtime.loadLibrary0(Runtime.java:822)
at java.lang.System.loadLibrary(System.java:992)
at org.odejava.Odejava.<clinit>(Odejava.java:88)
at com.jmex.physics.impl.ode.OdePhysicsSpace$OdeFactory.getImplementationVersion(OdePhysicsSpace.java:210)
at com.jmex.physics.PhysicsSpace.scanAvailableImplementations(PhysicsSpace.java:370)
at com.jmex.physics.PhysicsSpace.create(PhysicsSpace.java:339)
at com.jmex.physics.util.SimplePhysicsGame.initSystem(SimplePhysicsGame.java:90)
at com.jme.app.BaseGame.start(Unknown Source)
at Lesson1.main(Lesson1.java:97)
9 f?vr. 2008 12:30:26 com.jmex.physics.PhysicsSpace scanAvailableImplementations
ATTENTION: Failed to use physics implementation 'com.jmex.physics.impl.ode.OdePhysicsSpace$OdeFactory' due to Exception/Error: java.lang.UnsupportedOperationException: Failed to load natives
java.lang.UnsupportedOperationException: Failed to load natives
at org.odejava.Odejava.init(Odejava.java:125)
at com.jmex.physics.impl.ode.OdePhysicsSpace$OdeFactory.getImplementationVersion(OdePhysicsSpace.java:210)
at com.jmex.physics.PhysicsSpace.scanAvailableImplementations(PhysicsSpace.java:370)
at com.jmex.physics.PhysicsSpace.create(PhysicsSpace.java:339)
at com.jmex.physics.util.SimplePhysicsGame.initSystem(SimplePhysicsGame.java:90)
at com.jme.app.BaseGame.start(Unknown Source)
at Lesson1.main(Lesson1.java:97)
Caused by: java.lang.UnsatisfiedLinkError: /Library/Java/Extensions/libodejava.jnilib:
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1660)
at java.lang.Runtime.loadLibrary0(Runtime.java:822)
at java.lang.System.loadLibrary(System.java:992)
at org.odejava.Odejava.<clinit>(Odejava.java:88)
… 6 more
9 f?vr. 2008 12:30:26 class Lesson1 start()
GRAVE: Exception in game loop
java.lang.IllegalStateException: No physics implementation was registered nor found!
at com.jmex.physics.PhysicsSpace.create(PhysicsSpace.java:347)
at com.jmex.physics.util.SimplePhysicsGame.initSystem(SimplePhysicsGame.java:90)
at com.jme.app.BaseGame.start(Unknown Source)
at Lesson1.main(Lesson1.java:97)
I am using libodejava.jnilib from the jme-physics-2.1.zip archive.
Any idea to solve this problem ? Thank you.
[edit] I got an old version of libodejava.jnilib in my path. I deleted it, and everything works fine.
Make sure you have the -Djava.library.path=<path_to_ode>/impl/lib in your IDE settings or your command line.