Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Raspberry Pi操作系统上安装JavaFX_Java_Javafx_Raspberry Pi - Fatal编程技术网

如何在Raspberry Pi操作系统上安装JavaFX

如何在Raspberry Pi操作系统上安装JavaFX,java,javafx,raspberry-pi,Java,Javafx,Raspberry Pi,我想在Raspberry PI 1模型B上运行带有JavaFX包的.jar文件。 JavaFX不包含在ARM的JDK 8版本中。因此,我尝试通过参考以下网站来安装JavaFX。 我成功地安装了JDK,并将提取的文件从zip存档移动到JDK所需的文件夹中。 之后我试着运行两个.jar文件。一个.jar文件的GUI由Swing包组成,另一个由JavaFX包组成。 由Swing包组成的.jar文件运行良好,如下图所示。 另一方面,由JavaFX包组成的.jar文件输出错误或警告,如下图所示。 在

我想在Raspberry PI 1模型B上运行带有JavaFX包的.jar文件。 JavaFX不包含在ARM的JDK 8版本中。因此,我尝试通过参考以下网站来安装JavaFX。

我成功地安装了JDK,并将提取的文件从zip存档移动到JDK所需的文件夹中。 之后我试着运行两个.jar文件。一个.jar文件的GUI由Swing包组成,另一个由JavaFX包组成。 由Swing包组成的.jar文件运行良好,如下图所示。

另一方面,由JavaFX包组成的.jar文件输出错误或警告,如下图所示。

在这些输出之后,显示了没有标题栏的异常GUI。因此,无法最小化、最大化/调整关闭和移动窗口的大小。 另外,窗户周围是黑色的。

当然,这两个.jar文件在Windows10环境下的Java8上运行良好,没有错误。

注意:正如您所知,Java8版本的windows最初包括JavaFX库

我想解决这个问题。 我当前的操作系统和Java信息如下所示。


非常感谢您的时间。

事实上,现在几乎所有用于ARM的Linux JDK都是64位的

但是Azul有一个Zulu JDK,你可以从它开始:

完成此操作后,可以使用以下命令运行应用程序:

$ sudo java --module-path /home/pi/armv6hf-sdk/lib --add-modules=javafx.controls -jar YOUR-APP.jar

要了解完整的步骤,请查看我博客上的这篇文章:

事实上,现在几乎所有用于ARM的Linux JDK都是64位的

但是Azul有一个Zulu JDK,你可以从它开始:

完成此操作后,可以使用以下命令运行应用程序:

$ sudo java --module-path /home/pi/armv6hf-sdk/lib --add-modules=javafx.controls -jar YOUR-APP.jar

要了解完整的步骤,请查看我博客上的这篇文章:

请看这里:谢谢。但我也尝试了这个方法。Java11和LibericaJDK都需要带有ARMv7 CPU的Raspberry pi。所以,这种方法不可能不适用于Raspberry PI 1模型B。我记得JavaFX包含在Oracle的Java8中,但不包含在OpenJDK中?您需要小心不要违反许可协议,否则您可能会发现自己陷入麻烦……这是否运行armv6?Gluon公司的JavaFX11声称有一个在该平台上运行的版本。它需要JDK11或更高版本,所以我认为您必须构建JDK11的版本;这可能有点像兔子洞,但这可能是前进的方向……James_D:不幸的是,以下错误是JDK11输出的。“$java-VM服务器初始化期间发生版本错误VM仅在ARMv7+VFP上受支持”也许使用Raspberry Pi 2可以解决此问题,但我有很多Raspberry Pi 1,不知何故我想利用它们。请看这里:谢谢。但我也尝试了这个方法。Java11和LibericaJDK都需要带有ARMv7 CPU的Raspberry pi。所以,这种方法不可能不适用于Raspberry PI 1模型B。我记得JavaFX包含在Oracle的Java8中,但不包含在OpenJDK中?您需要小心不要违反许可协议,否则您可能会发现自己陷入麻烦……这是否运行armv6?Gluon公司的JavaFX11声称有一个在该平台上运行的版本。它需要JDK11或更高版本,所以我认为您必须构建JDK11的版本;这可能有点像兔子洞,但这可能是前进的方向……James_D:不幸的是,以下错误是JDK11输出的。“$java-VM服务器初始化期间发生版本错误VM仅在ARMv7+VFP上受支持”也许使用Raspberry Pi 2可以解决此问题,但我有很多Raspberry Pi 1,不知何故我想利用它们。感谢您告诉我全新的方法。我将在本周末或下周末尝试您的方法。请稍候。@TRI我被您的问题挑战,无法完成我很久以前开始撰写的一篇博文…;-)因此,我能够更新我的答案上面有更多的信息,并包括一个链接,以充分详细的一步一步在我的博客上。希望这能帮助你解决你的问题!很抱歉告诉你迟到了。我成功地用您提出的方法运行了我的jar文件。谢谢@我很高兴能帮上忙,谢谢你接受我的回答!谢谢你告诉我全新的方法。我将在本周末或下周末尝试您的方法。请稍候。@TRI我被您的问题挑战,无法完成我很久以前开始撰写的一篇博文…;-)因此,我能够更新我的答案上面有更多的信息,并包括一个链接,以充分详细的一步一步在我的博客上。希望这能帮助你解决你的问题!很抱歉告诉你迟到了。我成功地用您提出的方法运行了我的jar文件。谢谢@我很高兴能帮上忙,谢谢你接受我的回答!
$ sudo java --module-path /home/pi/armv6hf-sdk/lib --add-modules=javafx.controls -jar YOUR-APP.jar