JME2, Netbeans 6.5 on Mac UnsatisfiedLinkError: no lwjgl in java.library.path

Hi there,



i tried hours and dont know, why it doesnt work.



here the debug information of ant:


Adding reference: ant.PropertyHelper
Detected Java version: 1.5 in: /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home
Detected OS: Mac OS X
Adding reference: ant.ComponentHelper
 +Datatype antlib:org.netbeans.modules.apisupport.ant:nbinstaller org.netbeans.modules.apisupport.ant.InstallModuleTask
Setting ro project property: ant.file -> /Users/hucky/.netbeans/6.5/var/cache/executor-snippets/run.xml
Setting ro project property: ant.version -> Apache Ant version 1.7.1 compiled on June 27 2008
Setting ro project property: ant.home -> /Applications/NetBeans 6.5.app/Contents/Resources/NetBeans/java2/ant
Setting ro project property: classpath -> /Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/Users/hucky/java/Jme/build:/Users/hucky/java/Jmeboard/build/classes:/Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx
Setting ro project property: classname -> test.HelloWorld
Setting ro project property: application.args ->
Setting ro project property: platform.java -> /System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home/bin/java
Setting ro project property: work.dir -> /Users/hucky/java/Jmeboard
Setting ro project property: run.jvmargs -> -Djavac.library.path="/Users/hucky/java/Jme/lib/lwjgl/native/macosx":"/usr/local/lib":"/Users/hucky/java/Jme/lib":"/Users/hucky/java/Jme/lib/lwjgl"
Adding reference: ant.projectHelper
Adding reference: ant.parsing.context
Adding reference: ant.targets
parsing buildfile /Users/hucky/.netbeans/6.5/var/cache/executor-snippets/run.xml with URI = file:/Users/hucky/.netbeans/6.5/var/cache/executor-snippets/run.xml
Setting ro project property: ant.project.name -> {0} (run)
Adding reference: {0} (run)
Setting ro project property: ant.file.{0} (run) -> /Users/hucky/.netbeans/6.5/var/cache/executor-snippets/run.xml
Project base dir set to: /Users/hucky/.netbeans/6.5/var/cache/executor-snippets
 +Target:
 +Target: run
Attempting to create object of type org.apache.tools.ant.helper.DefaultExecutor
Adding reference: ant.executor
Build sequence for target(s) `run' is [run]
Complete build sequence is [run, ]
run:
Setting project property: classpath-translated -> /Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/build:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jmeboard/build/classes:/Users/hucky/java/Jmeboard/src:/Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx
Override ignored for property "run.jvmargs"
Override ignored for property "work.dir"
Override ignored for property "application.args"
Executing '/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home/bin/java' with arguments:
'-Djavac.library.path=/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/usr/local/lib:/Users/hucky/java/Jme/lib:/Users/hucky/java/Jme/lib/lwjgl'
'-classpath'
'/Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/build:/Users/hucky/java/Jmeboard/build/classes:/Users/hucky/java/Jmeboard/src'
'test.HelloWorld'
The ' characters around the executable and arguments are
not part of the command.
Execute:Java13CommandLauncher: Executing '/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home/bin/java' with arguments:
'-Djavac.library.path=/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/usr/local/lib:/Users/hucky/java/Jme/lib:/Users/hucky/java/Jme/lib/lwjgl'
'-classpath'
'/Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/build:/Users/hucky/java/Jmeboard/build/classes:/Users/hucky/java/Jmeboard/src'
'test.HelloWorld'
The ' characters around the executable and arguments are
not part of the command.
22.03.2009 00:43:51 com.jme.app.BaseGame start
INFO: Application started.
22.03.2009 00:43:51 com.jme.system.PropertiesGameSettings <init>
INFO: PropertiesGameSettings created
22.03.2009 00:43:51 com.jme.system.PropertiesGameSettings load
WARNUNG: Could not load properties. Creating a new one.
22.03.2009 00:43:52 class test.HelloWorld start()
SCHWERWIEGEND: Exception in game loop
java.lang.UnsatisfiedLinkError: no lwjgl in java.library.path
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1753)
        at java.lang.Runtime.loadLibrary0(Runtime.java:822)
        at java.lang.System.loadLibrary(System.java:993)
        at org.lwjgl.Sys$1.run(Sys.java:72)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.lwjgl.Sys.doLoadLibrary(Sys.java:65)
        at org.lwjgl.Sys.loadLibrary(Sys.java:81)
        at org.lwjgl.Sys.<clinit>(Sys.java:98)
        at org.lwjgl.opengl.Display.<clinit>(Display.java:129)
        at com.jme.system.lwjgl.LWJGLPropertiesDialog$ModesRetriever.run(LWJGLPropertiesDialog.java:682)
        at com.jme.app.AbstractGame.getAttributes(AbstractGame.java:252)
        at com.jme.app.BaseGame.start(BaseGame.java:67)
        at test.HelloWorld.main(HelloWorld.java:22)
22.03.2009 00:43:52 com.jme.app.BaseSimpleGame cleanup
INFO: Cleaning up resources.
22.03.2009 00:43:52 com.jme.system.lwjgl.LWJGLDisplaySystem <init>
INFO: LWJGL Display System created.
22.03.2009 00:43:52 com.jme.app.BaseGame start
INFO: Application ending.
BUILD SUCCESSFUL (total time: 0 seconds)
Could not load class (org.apache.tools.ant.taskdefs.repository.MavenRepository) for type mavenrepository
Could not load class (org.apache.tools.ant.taskdefs.repository.MavenRepository) for type mavenrepository



test/HelloWorld.java looks like:

package test;

import com.jme.app.SimpleGame;
import com.jme.scene.shape.Box;
import com.jme.math.Vector3f;
/**
 * Started Date: Jul 20, 2004<br><br>
 * Simple HelloWorld program for jME
 *
 * @author Jack Lindamood
 */
public class HelloWorld extends SimpleGame{
 public static void main(String[] args) {
  HelloWorld app = new HelloWorld(); // Create Object
  // Signal to show properties dialog
  app.setConfigShowMode(ConfigShowMode.AlwaysShow);
  app.start(); // Start the program
 }
 protected void simpleInitGame() {
  // Make a box
  Box b = new Box("Mybox", new Vector3f(0,0,0), new Vector3f(1,1,1));
  rootNode.attachChild(b); // Put it in the scene graph
 }
}



i wrote another file:


package test;

/**
 *
 * @author hucky
 */
class getLibraryPath
{
   public static void main(String[] args)
   {
      String path = System.getProperty("java.library.path");
      System.out.println(path);
   }
}



output:

Setting ro project property: ant.file -> /Users/hucky/.netbeans/6.5/var/cache/executor-snippets/run.xml
Setting ro project property: ant.version -> Apache Ant version 1.7.1 compiled on June 27 2008
Setting ro project property: ant.home -> /Applications/NetBeans 6.5.app/Contents/Resources/NetBeans/java2/ant
Setting ro project property: classpath -> /Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/Users/hucky/java/Jme/build:/Users/hucky/java/Jmeboard/build/classes:/Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx
Setting ro project property: classname -> test.getLibraryPath
Setting ro project property: application.args ->
Setting ro project property: platform.java -> /System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home/bin/java
Setting ro project property: work.dir -> /Users/hucky/java/Jmeboard
Setting ro project property: run.jvmargs -> -Djavac.library.path="/Users/hucky/java/Jme/lib/lwjgl/native/macosx":"/usr/local/lib":"/Users/hucky/java/Jme/lib":"/Users/hucky/java/Jme/lib/lwjgl"
Adding reference: ant.projectHelper
Adding reference: ant.parsing.context
Adding reference: ant.targets
parsing buildfile /Users/hucky/.netbeans/6.5/var/cache/executor-snippets/run.xml with URI = file:/Users/hucky/.netbeans/6.5/var/cache/executor-snippets/run.xml
Setting ro project property: ant.project.name -> {0} (run)
Adding reference: {0} (run)
Setting ro project property: ant.file.{0} (run) -> /Users/hucky/.netbeans/6.5/var/cache/executor-snippets/run.xml
Project base dir set to: /Users/hucky/.netbeans/6.5/var/cache/executor-snippets
 +Target:
 +Target: run
Attempting to create object of type org.apache.tools.ant.helper.DefaultExecutor
Adding reference: ant.executor
Build sequence for target(s) `run' is [run]
Complete build sequence is [run, ]
run:
Setting project property: classpath-translated -> /Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/build:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/src:/Users/hucky/java/Jmeboard/build/classes:/Users/hucky/java/Jmeboard/src:/Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx
Override ignored for property "run.jvmargs"
Override ignored for property "work.dir"
Override ignored for property "application.args"
Executing '/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home/bin/java' with arguments:
'-Djavac.library.path=/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/usr/local/lib:/Users/hucky/java/Jme/lib:/Users/hucky/java/Jme/lib/lwjgl'
'-classpath'
'/Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/build:/Users/hucky/java/Jmeboard/build/classes:/Users/hucky/java/Jmeboard/src'
'test.getLibraryPath'
The ' characters around the executable and arguments are
not part of the command.
Execute:Java13CommandLauncher: Executing '/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home/bin/java' with arguments:
'-Djavac.library.path=/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/usr/local/lib:/Users/hucky/java/Jme/lib:/Users/hucky/java/Jme/lib/lwjgl'
'-classpath'
'/Users/hucky/java/Jme/lib/lwjgl/jinput.jar:/Users/hucky/java/Jme/lib/jogl/jogl.jar:/Users/hucky/java/Jme/lib/jorbis/jorbis-0.0.17.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util.jar:/Users/hucky/java/Jme/lib/lwjgl/lwjgl_util_applet.jar:/Users/hucky/java/Jme/lib/junit/junit-4.1.jar:/Users/hucky/java/Jme/lib/jogl/gluegen-rt.jar:/Users/hucky/java/Jme/lib/swt/macosx-carbon/swt.jar:/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/Users/hucky/java/Jme/src:/Users/hucky/java/Jme/build:/Users/hucky/java/Jmeboard/build/classes:/Users/hucky/java/Jmeboard/src'
'test.getLibraryPath'
The ' characters around the executable and arguments are
not part of the command.

[b]//thats the path!???
.:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java[/b]



I did global library's with the jar's and classpaths.
I don't know what else to do, thank your for your help!
greets Patrick

I think the root of the problem is that its not finding the native libraries for lwjgl (not the JAR includes) - I dont use ant or Maven so not sure if they are complicating things for you.

 

This is probably the most common problem round here, and as such - try searching the forum for "no lwjgl in java.library.path" theres currently 9 pages of results for that :slight_smile:


i searched in the forums and tried much hint's but its hopeless.



I tried to compile on the command line without ant, but its the same.



Does anyone know more'



Greets Patrick

In your output, it seems to have a : as the separator in the class path ?

I don't know if thats some kind of Mac specific thing or other problem, but that will cause the error you are seeing on a windows box.



'-Djavac.library.path=/Users/hucky/java/Jme/lib/lwjgl/native/macosx:/usr/local/lib:/Users/hucky/java/Jme/lib:/Users/hucky/java/Jme/lib/lwjgl'



If its like that in your ant build script, try changing the : to a ;

this is a mac osx thing, in windows u use ; on mac :



i linked the libraries now on the filesystem to java, its a bad solution but it works!


ok, i found the solution:

its not:

-Djavac.library.path=path_to_native/macosx/

it has to be:

-Djava.library.path=path_to_native/macosx/



thx for your help!