我有一个使用 JavaFX 编写的应用程序,它可以在 Windows 和 Linux 上正常运行。然而,在 OSX 上,应用程序启动(列在进程列表中),但 GUI 从未出现。它是从另一个确保它是最新的应用程序启动的,使用标准约定“java -cp <所有必需的库,包括 jfxrt.jar>
OSX 是否需要让 JavaFX 正常工作,我缺少什么?
最佳答案
用于运行应用程序的命令行 smbarbour 包括一个 jfxrt.jar
位置:
/usr/lib/jvm/java-7-oracle/jre/lib/jfxrt.jar
如 EulerGeek's answer 中所述至 Compile code using JavaFX 2.0 (using command line) , 在 OS X 上,这个位置需要是:
java -cp ".:/Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home/jre/lib/jfxrt.jar" <app class>
用机器上安装的任何版本的 java 替换 jdk1.7.0_09.jdk
,或者在发布时要求 Java 8(不需要 jfxrt.jar
手动添加到类路径中)。
部署建议
如果您要向用户部署应用程序,即使使用 Java 8,建议您使用相关打包工具(例如 JavaFX ant tasks、javafxpackager、javafx-maven-plugin 或 javafx-gradle-plugin)打包应用程序。
关于java - 在 OSX 上启动 JavaFX 应用程序需要什么特别的东西吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21739139/