操作系统:Linux 薄荷:
uname -a
Linux akshay-mint-desktop 4.13.0-37-generic #42~16.04.1-Ubuntu SMP Wed Mar 7 16:03:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
大家好,
我已经编译并安装了 java-cef 来运行嵌入式 chromium 浏览器。不幸的是,当我启动应用程序时,出现以下错误:
错误日志:
javax.media.opengl.GLException: X11GLXDrawableFactory - Could not initialize shared resources for :0
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:317)
at jogamp.opengl.SharedResourceRunner.run(SharedResourceRunner.java:295)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NullPointerException
at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:625)
at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:539)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:293)
... 2 more
Exception in Application start method
Exception in thread "main" java.lang.RuntimeException: Exception in Application start method
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$154(LauncherImpl.java:182)
at java.lang.Thread.run(Thread.java:748)
**Caused by: java.lang.InternalError: XXX0 profile[1]: GL3bc -> profileImpl GL4bc !!! not mapped**
at javax.media.opengl.GLProfile.computeProfileMap(GLProfile.java:2021)
at javax.media.opengl.GLProfile.initProfilesForDeviceCritical(GLProfile.java:1889)
at javax.media.opengl.GLProfile.initProfilesForDevice(GLProfile.java:1838)
at javax.media.opengl.GLProfile.initProfilesForDefaultDevices(GLProfile.java:1807)
at javax.media.opengl.GLProfile.access$000(GLProfile.java:77)
at javax.media.opengl.GLProfile$1.run(GLProfile.java:201)
at java.security.AccessController.doPrivileged(Native Method)
at javax.media.opengl.GLProfile.initSingleton(GLProfile.java:187)
at javax.media.opengl.GLProfile.getProfileMap(GLProfile.java:2246)
at javax.media.opengl.GLProfile.get(GLProfile.java:992)
at javax.media.opengl.GLProfile.get(GLProfile.java:1021)
at javax.media.opengl.GLProfile.getMaxFixedFunc(GLProfile.java:774)
at org.cef.browser.CefBrowserOsr.createGLCanvas(CefBrowserOsr.java:124)
at org.cef.browser.CefBrowserOsr.<init>(CefBrowserOsr.java:71)
at org.cef.browser.CefBrowserOsr.<init>(CefBrowserOsr.java:58)
at org.cef.browser.CefBrowserFactory.create(CefBrowserFactory.java:16)
at org.cef.CefClient.createBrowser(CefClient.java:144)
at org.cef.CefClient.createBrowser(CefClient.java:137)
at sample.Main.start(Main.java:36)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$161(LauncherImpl.java:863)
at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$174(PlatformImpl.java:326)
at com.sun.javafx.application.PlatformImpl.lambda$null$172(PlatformImpl.java:295)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$173(PlatformImpl.java:294)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
at com.sun.glass.ui.gtk.GtkApplication.lambda$null$48(GtkApplication.java:139)
... 1 more
任何想法有什么问题吗?谢谢。
答案1
必须和jogl一起。显然它需要更新代码以反映 OpenGL 中某些 GPU 的更新,我受到了 AMD Polaris GPU 的影响。它在下一个版本中得到修复,但似乎没有预计到达时间。
这里有更多信息(https://jogamp.org/bugzilla/show_bug.cgi?id=1357)和一个补丁。我不熟悉java,所以无法应用它。