【问题标题】:How to solve "java.lang.Exception: No web browser found" on Raspberry-Pi如何解决 Raspberry-Pi 上的“java.lang.Exception:未找到 Web 浏览器”
【发布时间】:2020-10-01 16:44:14
【问题描述】:

在 Raspberry Pi OS 上,我尝试使用 JavaFX 安装多个版本的 Java 以便运行 [rbox.jar| https://www.radiosparx.com/sslbypass/str/app/rbox.jar]。我找到的最佳 Java 版本是来自 https://bell-sw.com/ 的版本,但即使使用它我也无法使其工作。

在大多数情况下,我收到以下错误:

pi@raspberrypi:~/rbox $ java -jar rbox.jar
java.lang.Exception: No web browser found
        at javafx.graphics/com.sun.javafx.application.HostServicesDelegate$StandaloneHostService.showDocument(HostServicesDelegate.java:146)
        at javafx.graphics/javafx.application.HostServices.showDocument(HostServices.java:115)
        at anywheresoftware.b4j.objects.JFX.ShowExternalDocument(JFX.java:138)
        at com.radiosparx.rbox.main$ResumableSub_AppStart.resume(main.java:150)
        at com.radiosparx.rbox.main._appstart(main.java:83)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:91)
        at anywheresoftware.b4a.BA.raiseEvent(BA.java:78)
        at com.radiosparx.rbox.main.start(main.java:37)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:846)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:455)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
        at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
        at javafx.graphics/com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
        at javafx.graphics/com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$11(GtkApplication.java:277)
        at java.base/java.lang.Thread.run(Thread.java:834

我有 Chromium 和 Dillo

pi@raspberrypi:~ $ sudo update-alternatives --config x-www-browser
There are 2 choices for the alternative x-www-browser (providing /usr/bin/x-www-browser).

  Selection    Path                       Priority   Status
------------------------------------------------------------
* 0            /usr/bin/chromium-browser   90        auto mode
  1            /usr/bin/chromium-browser   90        manual mode
  2            /usr/bin/dillo              50        manual mode

任何帮助将不胜感激。

【问题讨论】:

    标签: java javafx raspberry-pi arm


    【解决方案1】:

    错误信息很清楚,不是吗?该软件试图通过HostServices.showDocument 方法显示一个文档(可能是一些HTML 帮助文本或类似的东西),但无法在Raspi 上找到浏览器。所以问题是,您的 Raspis 上是否安装了浏览器?如果没有,那就去做吧。否则看HostServicesDelegate$StandaloneHostService.showDocument中的代码,看看能不能通过它的lookup方法找到。

    相关代码可以在这里找到:https://github.com/openjdk/jfx/blob/master/modules/javafx.graphics/src/main/java/com/sun/javafx/application/HostServicesDelegate.java

    【讨论】:

    • 是的,我有 Chromium 和 Dillo。 pi@raspberrypi:~ $ sudo update-alternatives --config x-www-browser There are 2 choices for the alternative x-www-browser (providing /usr/bin/x-www-browser). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/chromium-browser 90 auto mode 1 /usr/bin/chromium-browser 90 manual mode 2 /usr/bin/dillo 50 manual mode
    • 以上代码使用xdg-open打开文档。在命令行上检查这是否适合您。
    • 是的,我试过xdg-open https://google.com,它打开了铬。
    • 非常感谢您的帮助!我设法通过复制 cp /usr/bin/chromium-browser /usr/bin/google-chrome 来修复它。感谢您的提示,github.com/openjdk/jfx/blob/master/modules/javafx.graphics/src/…
    • 好吧,一个符号链接可能也可以做到这一点:-)
    猜你喜欢
    • 2017-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-24
    相关资源
    最近更新 更多