【问题标题】:Java and portability: Fake the presence of JavaFXJava 和可移植性:假装 JavaFX 的存在
【发布时间】:2018-10-27 04:32:40
【问题描述】:

我正在开发一个应该在树莓派上使用的 Java 软件。现在 Raspi 遗憾地不再正式支持 JavaFx,即使可以手动添加它。

我的软件在没有 JFX 的情况下也大部分可用,并且旨在禁止在 JFX 不可用时使用某些功能。

然而,问题是我得到了关于 JFX 的 NoClassDefFoundError 异常,尽管没有要执行的函数。

我无法准确缩小导致异常的行,因为它在 PC 上不可复制(仅在树莓上),并且给定的行和类非常混乱。该行绝对不会调用任何与 JFX 相关的内容,但它使用对类的静态调用,这确实需要 JFX 用于其他函数(不是被调用的函数)。

我假设原因已经是“导入”调用或某些函数的返回类型(未调用!)具有 JFX 数据类型。

有人知道如何规避这个相当大的问题吗? 非常感谢提前!

【问题讨论】:

    标签: java classnotfoundexception portability


    【解决方案1】:
    1. 为什么不直接从 Gluon 网站安装 JavaFX 的缺失部分?这是一个解释该过程的教程:https://wimdeblauwe.wordpress.com/2017/08/26/using-javafx-on-raspberry-pi-3-with-gluon/

    您可能还需要安装缺少的 dirmngr

    sudo apt-get install dirmngr --install-recommends
    
    1. 另一种方法是在您的 PC 上安装 OpenJDK,它也不包含 JavaFX,并使用它来缩小在非 fx 环境中运行应用程序的问题。

    【讨论】:

      猜你喜欢
      • 2021-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-15
      • 2015-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多