在Ubuntu 20.04

时间:2020-07-07 02:31:24

标签: java ubuntu

我尝试执行遥测查看器的.jar文件,然后收到此错误消息:

Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:61)
Caused by: com.jogamp.opengl.GLException: Profile GL2 is not available on null, but: [GLProfile[GLES1/GLES1.hw], GLProfile[GLES2/GLES3.hw], GLProfile[GL2ES1/GLES1.hw], GLProfile[GL4ES3/GL4.hw], GLProfile[GL2ES2/GL4.hw], GLProfile[GL4/GL4.hw], GLProfile[GLES3/GLES3.hw], GLProfile[GL4/GL4.hw], GLProfile[GL3/GL4.hw], GLProfile[GL2GL3/GL4.hw]]
    at com.jogamp.opengl.GLProfile.get(GLProfile.java:991)
    at com.jogamp.opengl.GLProfile.get(GLProfile.java:1004)
    at OpenGLChartsRegion.<init>(OpenGLChartsRegion.java:108)
    at Main.main(Main.java:31)
    ... 5 more

您可以在此链接上检查遥测查看器的项目 https://github.com/farrellf/TelemetryViewer http://www.farrellf.com/projects/software/2019-09-08_Telemetry_Viewer_v0.6/ 请帮忙。谢谢。

1 个答案:

答案 0 :(得分:0)

看起来该应用程序正在对OpenGL配置文件GL2进行硬编码,尽管所显示的异常消息表明它可能支持其他配置文件(ES /嵌入式和更高版本),但您正在运行的平台似乎不支持该文件GL /桌面,例如GL4)。

看起来这是将其硬编码到GL2的代码行,我想知道如果升级到GL4或其他受支持的配置文件之一会发生什么? https://github.com/farrellf/TelemetryViewer/blob/master/Telemetry%20Viewer/src/OpenGLChartsRegion.java#L108

这是从JOGL库获取的OpenGL配置文件之间差异的摘要: http://michael-bien.com/mbien/entry/jogl_2_opengl_profiles_explained/