JavaFX可以用于覆盆子皮吗
我想使用JavaFX为Raspberry Pi编写程序,但我的Raspberry Pi上的JavaSDK8似乎不支持JavaFX 所以我的问题是,JavaFX可以用于覆盆子皮吗,java,javafx,raspberry-pi,Java,Javafx,Raspberry Pi,我想使用JavaFX为Raspberry Pi编写程序,但我的Raspberry Pi上的JavaSDK8似乎不支持JavaFX 所以我的问题是,Raspberry Pi 2/3是否支持JavaFX?如果是,为什么JDK平台上没有JavaFX库?有没有办法支持它或者值得在Raspberry PI上编写JavaFX应用程序 正在使用的Java版本是1.8.0\u 65如果您使用的是Oracle JDK for ARM 8u33/Oracle Java SE Embedded 8u33或更高版本,您
Raspberry Pi 2/3
是否支持JavaFX?如果是,为什么JDK平台上没有JavaFX库?有没有办法支持它或者值得在Raspberry PI上编写JavaFX应用程序
正在使用的Java版本是
1.8.0\u 65
如果您使用的是Oracle JDK for ARM 8u33/Oracle Java SE Embedded 8u33
或更高版本,您将无法在JDK中找到捆绑的JavaFX。Oracle从8u33开始将JavaFX从ARM包中删除。有关更多信息,请查看
那么,我们还可以在Raspberry PI上使用JavaFX吗
当然可以。以下是仍然可以在嵌入式设备上运行JavaFX的几种方法:
jfxrt.jar
。您可以将jar复制到JDK中,并在Raspberry PI上运行JavaFX。Glion通过帮助用户通过插件部署JavaFX插件进一步扩展了支持。看看:
- 对于JavaFX11,可以阅读
是的,您可以在Raspberry Pi上运行JavaFX,但某些类库在默认情况下不起作用,例如示例媒体。
目前,我仍在尝试使用此媒体类库处理raspberry Pi由于某些原因,上面的链接不起作用,但我可以从 [死亡] 然后解压缩文件夹并复制
armv6hf-sdk/rt/lib/ext/**jfxrt.jar** --> jre/lib/ext/
armv6hf-sdk/rt/lib/arm/***** --> jre/lib/arm/
armv6hf-sdk/rt/lib/**javafx.platform.properties** --> jre/lib/
armv6hf-sdk/rt/lib/**javafx.properties** --> jre/lib/
armv6hf-sdk/rt/lib/**jfxswt.jar** --> jre/lib/
重新启动Raspberry Pi和FX应用程序工作正常是的,您可以使用JavaFx 下面是一个在Raspberry PI上启用javafx的脚本(在raspbian stretch上测试)
#/bin/bash
#在raspberry PI上安装javafx
#WF2019-01-13
src=/usr/local/src
ext=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre/lib/ext
javafx=armv6hf sdk
#ansi颜色
#http://www.csc.uvic.ca/~sae/seng265/fall04/tips/s265s047 tips/bash-using-colors.html
蓝色='\033[0;34米'
红色='\033[0;31m'
绿色='\033[0;32m'#'\e[1;32m'对于白色背景来说太亮了。
endColor='\033[0m'
#
#彩色消息
#参数:
#1:l_颜色-消息的颜色
#2:l_msg-要显示的消息
#
颜色_msg(){
本地l_颜色=“$1”
本地l_msg=“$2”
echo-e“${l_color}$l_msg${endColor}”
}
或
#
#在stderr上显示给定的错误消息并退出
#
#参数:
#1:l_msg-要显示的错误消息
#
错误(){
本地l_msg=“$1”
#使用ansi红色表示错误
颜色\u msg$red“错误:1>&2
颜色为红色“\t$l\u msg”1>&2
出口1
}
#
#错误
#
#在stderr上显示给定的错误消息并退出
#
#参数:
#1:l_msg-要显示的错误消息
#
错误(){
本地l_msg=“$1”
#使用ansi红色表示错误
颜色\u msg$red“错误:1>&2
颜色为红色“\t$l\u msg”1>&2
出口1
}
color\u msg$blue“正在尝试安装javafx”
如果[!-d$ext]
然后
错误“目录$ext不存在-需要java安装”
fi
如果[!-d$src]
然后
错误“目录$src丢失-应为”
fi
cd$src
如果[!-f$javafx.zip]
然后
color_msg$blue“下载$javafx.zip”
sudo curl-Lhttps://gluonhq.com/download/javafx-embedded-sdk/ -o$javafx.zip
其他的
color_msg$green“$javafx.zip已下载”
fi
如果[!-d$javafx]
然后
color_msg$blue“提取”$javafx.zip
sudo解压$javafx.zip
其他的
颜色\u msg$green“$javafx已提取”
fi
cd$ext
颜色\u msg$蓝色“创建符号链接”
对于rt/lib/arm rt/lib/ext/jfxrt.jar lib/javafx-mx.jar lib7JFX rt/lib/jfxswt.jar中的路径
做
from=$src/$javafx/$path
b=$(basename$来自)
如果[-L$b]
然后
颜色\u msg$green“符号链接$b已存在”
其他的
sudo ln-s$src/$javafx/$path。
fi
完成
这个问题已经有点老了,但到今天为止,您还可以从Bellsoft下载并安装最新的JDK,其中还包括最新的JavaFX。
如果还有人来到这里,我想指出我写的一篇文章,并准确地演示了这一点:。正如mipa回答的那样,BellSoft LibericaJDK确实是在Raspberry Pi上使用JavaFX的完美JavaJDK。您使用的是哪个JDK次要版本?”或者,您可以构建OpenJFX并将其添加到您的JDK中(这不是一种简单的方法)很显然(很简单)-对Windows不确定-运行
sudo-apt-get-install-openjfx
得到了我所需要的一切。当我尝试sudo-apt-get-install-openjfx
时,我得到一个错误,说明它无法找到程序包openjfx。顺便说一句,这篇文章不错。