获取代码行的错误。我应该进口什么?

时间:2012-02-18 08:28:20

标签: java opengl jogl

我得到了第20行的错误(标记为)对于.createGLCanvas,我收到一条错误说“方法createGLCanvas(GLCapabilities)未定义类型GLDrawableFactory”这是什么意思?我没有导入我想要导入的东西吗?

import javax.media.opengl.*;
import java.awt.Color;
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.media.opengl.GL;
import javax.media.opengl.GLAutoDrawable;
import javax.media.opengl.GLCanvas;
import javax.media.opengl.GLEventListener;
import java.awt.Canvas;
import javax.swing.JPanel;


public class Forest{//open forest

public static void main(String[] args)
{
    Frame frame = new Frame("Hello World");

20:    GLCanvas canvas = GLDrawableFactory.getFactory().createGLCanvas(new GLCapabilities());
    frame.add(canvas);

    frame.setSize(300, 300);
    frame.setBackground(Color.WHITE);

    frame.addWindowListener(new WindowAdapter()
    {
        public void windowClosing(WindowEvent e)
        {
            System.exit(0);
        }
    });

    frame.show(); 

}//close forest
}

3 个答案:

答案 0 :(得分:1)

这意味着GLDrawableFactory上没有名为createGLCanvas的方法。所以你需要找出要调用的内容。

答案 1 :(得分:1)

重点是,根据javadoc,应该支持这种方法:

GLCanvas createGLCanvas(GLCapabilities capabilities)

我认为您应该再次检查您的类路径。你在用什么罐子?你从哪里下载的?什么是jar版本?检查所有这些并在编写代码时使用描述您的版本库的相应API文档。

答案 2 :(得分:0)

根据this thread,正确的方法是GLCanvas canvas = new GLCanvas();。这似乎代表了API的变化。