在java程序中运行OpenGL命令

时间:2012-03-09 10:58:01

标签: java opengl netbeans path jogl

我正在尝试运行包含OpenGL命令的Java程序,它确实可以编译。我正在使用netbeans并添加了必要的库。

但我明白了:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no jogl in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)
at java.lang.Runtime.loadLibrary0(Runtime.java:845)
at java.lang.System.loadLibrary(System.java:1084)
at com.sun.opengl.impl.NativeLibLoader$1.run(NativeLibLoader.java:111)
etc etc etc.

认为它可能与路径有关,但没有任何作用 -

1 个答案:

答案 0 :(得分:3)

要使用JOGL,程序需要JOGL JAR文件和JOGL本机库(例如Windows上的DLL文件)。堆栈跟踪表明找不到本机库。 Java搜索本机库的方式取决于系统,但在Windows上,您有几个选项可以加载JOGL本机库:

  • 将本机库放入Windows PATH变量中引用的文件夹中;
  • 我记得JRE安装文件夹中有一个专用子文件夹,也可以用于本机库;
  • 将包含本机库的文件夹添加到Windows PATH变量;
  • 运行java.exe时,在-Djava.library.path参数中指定包含本机库的文件夹;
  • 在运行java.exe之前,将包含本机库的文件夹设置为当前文件夹。

前三个选项可能需要管理员权限。出于某种原因,我没有得到第四个选项。所以,我的JOGL应用程序使用第五个选项,它工作正常。