当我尝试运行 JOGL Swing test code 时,我收到一条错误消息:
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/nativewindow/impl/jvm/JVMUtil
at javax.media.opengl.GLProfile.<clinit>(GLProfile.java:625)
at com.jojodmo.wizardgame.Main.main(Main.java:34)
Caused by: java.lang.ClassNotFoundException: com.sun.nativewindow.impl.jvm.JVMUtil
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 2 more
我的Main.java
的第34行有这一行,其中GLProfile
是javax.media.opengl.GLProfile
:
GLProfile glprofile = GLProfile.getDefault()
这是我第一次在文件中使用 JOGL 执行任何操作。我正在使用JOGL 2.0 ,我正在使用的文件名为 jogl-2.0-macosx-universal.zip
(我也尝试过使用 version 1.1.1 ,但得到相同的结果,除此之外,它已过时)。从java.net下载,这不是官方的,可能是问题所在,但我不确定。
我将 gluegen-rt.jar
和 jogl.all.jar
导入 eclipse:
我将 native 库位置
设置为包含.jnilib
和.so
文件的文件夹:
问题是我将 swing
与 awt
结合使用,还是其他错误?
最佳答案
与 JOGL 1 存在冲突,请卸载它,将其从您的 JVM 和/或扩展机制使用的目录中删除。 JOGL 2.3.1(目前为 2015 年 6 月)中不再存在“com/sun”。 JOGL 2.0 已过时,jogl.all.jar 已更名为 jogl-all.jar 同时。请遵循我们 Wiki 上提供的说明: http://jogamp.org/wiki/index.php/Setting_up_a_JogAmp_project_in_your_favorite_IDE
P.S:Oracle 在 2009 年 11 月放弃了 JOGL,它一直由 JogAmp 社区非常积极地维护。我负责引擎支持。
关于java - 尝试使用 JOGL Swing 测试代码时未找到 JVMUtil 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30610488/