Eclipse中的JOGL OpenGL抛出NoSuchMethodError

时间:2013-01-29 21:40:18

标签: java eclipse opengl jogl

我想用Java学习OpenGL。我没有使用OpenGL的经验,但我对Java很满意。

计划是在Eclipse Indigo中使用JOGL。首先,从Schabby's Blog编写一个简单的hello world应用程序。我的申请来源是一样的。

我遵循所有步骤并引用 gluegen-rt-natives-windows-amd64.jar,gluegen-rt.jar,jogl-all.jar和jogl-all-natives-windows-amd64.jar 库。该应用程序配置为在JRE6 x64中运行。

当我运行应用程序时,抛出以下异常:

Exception in thread "main" java.lang.NoSuchMethodError: jogamp.common.awt.AWTEDTExecutor.invoke(Ljava/lang/Object;ZZLjava/lang/Runnable;)Z

其他答案表明问题在于主要方法,但我没有看到任何问题。

public static void main(String[] args) 
{
       \\Implementation
}

我还可以尝试解决这个问题吗?

编辑:似乎每次需要绘制时都会抛出异常。

如果我对此行frame.setSize( frame.getContentPane().getPreferredSize() );发表评论,则会显示一个具有最小宽度和高度的默认框架,但只要重新调整大小,就会抛出相同的异常。

1 个答案:

答案 0 :(得分:1)

这是无法加载本机库时引发的顶级异常。请参阅the documentation on local installation并仔细阅读。

首先确保JRE Eclipse正在使用的实际上是64位。您的行为与尝试在32位JRE中加载64位DLL一致。

请注意,博客有点过时了。例如,jogl.all.jar现在是jogl-all.jar。确保您的jar引用是正确的文件。使用this set of instructions, which is based on the current release可能会获得更好的结果。

本机jar在运行时扩展。存储此jar的目录必须可写,才能使此机制正常工作。我通常会详细介绍使用扩展的DLL / jnilib / so文件并设置java.library.path以消除所有疑问。