2011-08-02 13 views
3

JOGL 2.0將GLProfile參數添加到GLCapabilities。無論出於何種原因,這種簡單的代碼:使用JOGL 2.0的GLProfile中的空指針異常

import javax.media.opengl.GLCapabilities; 
import javax.media.opengl.GLProfile; 
import javax.media.opengl.awt.GLCanvas; 

public class Test { 
    public static void main(String[] args){ 
     GLCanvas canvas = new GLCanvas(new GLCapabilities(GLProfile.getDefault())); 
    } 
} 

我得到以下錯誤:

Exception in thread "main" java.lang.NullPointerException 
    at javax.media.opengl.GLProfile.getProfileMap(GLProfile.java:1561) 
    at javax.media.opengl.GLProfile.get(GLProfile.java:589) 
    at javax.media.opengl.GLProfile.getDefault(GLProfile.java:421) 
    at javax.media.opengl.GLProfile.getDefault(GLProfile.java:429) 
    at com.setcorp.mosey.Test.main(Test.java:7) 

所以我甚至不能創建GLCanvas中使用我的JOGL 2.0應用程序。

在代:

GLCanvas canvas = new GLCanvas(new GLCapabilities(GLProfile.get(GLProfile.GL2))); 

GLCanvas canvas = new GLCanvas(new GLCapabilities(null)); 

爲7行給了我同樣的錯誤。

我已經設置了包含newt.all.jar,jogl.all.jar,nativewindow.all.jar和gluegen-rt.jar的構建路徑。我從他們的原生jar中解壓縮dlls,並分別在eclipse中設置本地庫的位置。我正在使用構建和運行W7,Intel Core 2 Duo T8100 2.10GHz,2GB RAM和Nvidia Quadro NVS 140M的jogl-2.0-b409-20110717-windows-i586。

是否有更早的版本可以用於我?

回答

0

你的代碼似乎很好。只需在構建路徑中使用這些罐子來嘗試它(見下文)。避免在嘗試時包括其他罐子。

  • jogl.all.jar
  • JOGL-所有本地人 - 窗口i586.jar
  • gluegen-rt.jar中
  • gluegen-RT-當地人 - 窗口i586.jar
+0

不適合我... – 11684