Your application tries to load a native library called liblwjgl.so (Linux) or lwjgl.dll (Windows). Check to see if this file exists and what it's file permissions are. This problem most often shows up because the file does not exist, has incorrect file permissions, or can not be located by the JVM.
Under Linux set LD_LIBRARY_PATH. Under Windows set PATH.
posted 13 years ago
Thanks, I found the lwjgl.dll files, there are about 4 dll files. Where should i put them?
How to find out that JVM is looking for a '.dll' or '.so' module from the exception thrown?
The message says "java.lang.UnsatisfiedLinkError: no lwjgl in java.libr ary.path". The "lwjgl" is interpreted in a platform-dependent way. On Windows, it means LWJGL.DLL . On Linux and many other UNIX variants, it means "liblwjgl.so". On other platforms, it may mean something else. You're just supposed to know what it means on your platform.
Since you're on windows, just make sure the file(s) are in a directory named on your PATH environment variable; you could add an entry if need be.
From memory JNI is a bit of a pain (on Windows any way) in that it can also say it can't find things when it means it can't load things so if your DLL needs another DLL you can sometimes get this error.
"Eagles may soar but weasels don't get sucked into jet engines" SCJP 1.6, SCWCD 1.4, SCJD 1.5,SCBCD 5
java.library.path is the path that Java uses to find native libraries (such as lwjgl.dll). You should set it to the directory that contains the DLL files. You specify this with the -D switch on the command line, for example: