具体错误:
libEGL warning: DRI2: failed to authenticate
libEGL warning: DRI2: failed to authenticate
libEGL warning: DRI2: failed to authenticate
com.jogamp.opengl.GLException: Not a GL2 implementation
at jogamp.opengl.es1.GLES1Impl.getGL2(GLES1Impl.java:4929)
at javax.media.j3d.JoglPipeline.createNewContext(JoglPipeline.java:6428)
at javax.media.j3d.Canvas3D.createNewContext(Canvas3D.java:4612)
at javax.media.j3d.Canvas3D.createNewContext(Canvas3D.java:2386)
at javax.media.j3d.Renderer.doWork(Renderer.java:881)
at javax.media.j3d.J3dThread.run(J3dThread.java:271)
DefaultRenderingErrorListener.errorOccurred:
CONTEXT_CREATION_ERROR: Renderer: Error creating Canvas3D graphics context
graphicsDevice = X11GraphicsDevice[screen=0]
canvas = javax.media.j3d.SwCanvas3D[canvas0,0,0,1004x564]
EGLDisplayUtil.EGLDisplays: Shutdown (open: 1)
EGLDisplayUtil: Open EGL Display Connections: 1
EGLDisplayUtil: Open[0]: 0x7efdf099b2d0: EGLDisplayRef[0x7efdf099b2d0: refCnt 1]
X11Util.Display: Shutdown (JVM shutdown: true, open (no close attempt): 1/1, reusable (open, marked uncloseable): 0, pending (open in creation order): 1)
X11Util: Open X11 Display Connections: 1
X11Util: Open[0]: NamedX11Display[:0, 0x7efdf097c4a0, refCount 1, unCloseable false]
真是让人莫名其妙。同事说以前几个包是对的,于是进行了研究,并重新编译,又对了。原因是替换了个GLContextImpl.class。也就是说:出错了再替换;不出错不替换。具体可参考:
com.jogamp.opengl.GLException: J3D-Renderer-1: createImpl ARB n/a but required, profile > GL2 reques_柳鲲鹏-CSDN博客