线程“main”java.lang.UnsatisfiedLinkError中的异常:java.lang.Runtime.loadLibrary0中java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)的java.library.path中没有gluegen-rt(Runtime.java: 845)at java.lang.System.loadLibrary(System.java:1084)at com.jogamp.gluegen.runtime.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:102)at com.jogamp.gluegen.runtime.NativeLibLoader.access $ 000( NativeLibLoader.java:51)com.jogamp.gluegen.runtime.NativeLibLoader $ 1.run(NativeLibLoader.java:70)at java.security.AccessController.doPrivileged(Native Method)at com.jogamp.gluegen.runtime.NativeLibLoader.loadGlueGenRT (NativeLibLoader.java:68)com.jogamp.common.jvm.JVMUtil . (JVMUtil.java:56)位于HelloWorld.main的javax.media.opengl.GLProfile . (GLProfile.java:1051)(HelloWorld.java: 14)
每次我尝试运行教程JOGL文件时,我都会得到这个可爱的异常 . 我拼命地尽我所能 . 为jogl和gluegen添加所有可能的库,包括:
jogl.jar jogl.all.jar jogl natives gluegen natives gluegen和jogle natives for macosx
一切,它说没有gluegen库,虽然显然有 . -.-我在某处读到了有关jnilib文件的内容,并尝试将它们放入带有jar文件的文件夹中,但仍然没有运气 .
顺便说一句,我正在使用Eclipse .
1 回答
必须告诉操作系统在尝试运行应用程序时在哪里找到gluegen-rt本机库,您可以通过编辑Eclipse中的“运行配置”来设置适当的环境变量 . 我在Linux上开发,对我而言,步骤是
右键单击项目资源管理器中的主类
选择运行方式 - >运行配置...
选择环境选项卡
点击"New..."
输入名称:
LD_LIBRARY_PATH
和值:/usr/lib64/jogl:/usr/lib64/gluegen
点击"OK","Apply","Run"
在Mac OSX上,您可能必须使用
DYLD_FALLBACK_LIBRARY_PATH
或DYLD_LIBRARY_PATH
而不是LD_LIBRARY_PATH
,并且JOGL和Gluegen库的位置将不同 . 这些是包含本机库的目录,在Linux上的名称以.so
结尾,我相信Mac OSX上的.jnilib
.