我无法加载 gluegen-rt.dll 64 位库

I can't load the gluegen-rt.dll 64bits library

这是我添加的库:

-gluegen-rt-natives-windows-amd64

-gluegen-rt

-jogl-all-natives-windows-amd64

-jogl-all

这是我得到的异常:

Exception in thread "main" java.lang.UnsatisfiedLinkError: Can't load library: C:\Users\KamyluKuna\Documents\NetBeansProjects\OpenGL\natives\windows-i586\gluegen-rt.dll at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1828) at java.lang.Runtime.load0(Runtime.java:792) at java.lang.System.load(System.java:1059) at com.jogamp.common.jvm.JNILibLoaderBase.loadLibraryInternal(JNILibLoaderBase.java:624) at com.jogamp.common.jvm.JNILibLoaderBase.access[=15=]0(JNILibLoaderBase.java:63) at com.jogamp.common.jvm.JNILibLoaderBase$DefaultAction.loadLibrary(JNILibLoaderBase.java:106) at com.jogamp.common.jvm.JNILibLoaderBase.loadLibrary(JNILibLoaderBase.java:487) at com.jogamp.common.os.DynamicLibraryBundle$GlueJNILibLoader.loadLibrary(DynamicLibraryBundle.java:421) at com.jogamp.common.os.Platform.run(Platform.java:317) at java.security.AccessController.doPrivileged(Native Method) at com.jogamp.common.os.Platform.<clinit>(Platform.java:287) at com.jogamp.opengl.GLProfile.<clinit>(GLProfile.java:147) at opengl.Lesson1.AppRoot.initGLObjects(AppRoot.java:50) at opengl.Lesson1.AppRoot.<init>(AppRoot.java:134) at opengl.Lesson1.App.<init>(App.java:14) at opengl.Lesson1.App.main(App.java:41) Java Result: 1

您可能在 64 位操作系统上使用 32 位 JVM。然后,GlueGen 会尝试查找 32 位本机库,而您只提供 64 位本机库。提供 32 位本机库或使用 64 位 JVM 或使用 jogamp-fat.jar(它包含本机库和 JogAmp 的 Java 库)而不是使用单独的 JAR。

顺便说一下,您没有说明 "the libraries I have added" 的意思。将包含本机库的 JAR 放入与包含 Java 库的目录相同的目录中,并将包含 Java 库的 JAR 添加到类路径中,或者将 jogamp-fat.jar 放入类路径中(最简单且最不容易出错的解决方案)。

你可以关注these instructions of our wiki.

对我来说,我是 运行 IntelliJ 中的 Maven 项目,具有以下依赖项:

    <dependency>
        <groupId>org.jogamp.jogl</groupId>
        <artifactId>jogl-all-main</artifactId>
        <version>2.3.2</version>
    </dependency>
    <dependency>
        <groupId>org.jogamp.gluegen</groupId>
        <artifactId>gluegen-rt</artifactId> <!-- This is incorrect -->
        <version>2.3.2</version>
    </dependency>

将第二个依赖项从 gluegen-rt 更改为 gluegen-rt-main 后,错误消失了。