繁体   English   中英

Mac OS中的Java FX错误

[英]Java fx error in Mac OS

我正在尝试在Mac OS中使用JavaFX运行应用程序,但出现此错误:

Exception in thread "main" java.lang.RuntimeException: java.lang.NoSuchMethodError: getScaleFactor
at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:281)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:124)
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:163)
at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:47)
at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:115)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.NoSuchMethodError: getScaleFactor
at com.sun.glass.ui.mac.MacApplication._initIDs(Native Method)
at com.sun.glass.ui.mac.MacApplication.<clinit>(MacApplication.java:34)
at com.sun.glass.ui.mac.MacPlatformFactory.createApplication(MacPlatformFactory.java:33)
at com.sun.glass.ui.Application.Run(Application.java:103)
at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:271)
... 5 more

我使用胖罐插件将应用程序打包在一个罐中,使用带有和不带有jfxrt.jar的日食,问题仍然存在

使用Fat jar插件将应用程序放在一个jar中

不要那样做 如果要使用该插件来打包JavaFX应用程序,请向插件创建者记录功能请求,以向插件添加JavaFX支持。

使用了解JavaFX并将正确打包JavaFX应用程序的打包方法,例如:

onejar可能会随Java 8开箱即用,因为JavaFX的某些类加载规则已更改为对Java 8更加宽松,我想您可以尝试一下并看看它是否有效。

我打包了应用程序。 与。 jfxrt.jar

除非您将整个JRE与该应用程序打包在一起,否则我不建议您这样做。 不这样做的原因在以下答案中得到了解释: 带有JavaFX的Maven项目(`lib中的jar文件) (我知道您没有使用Maven,但原因相似)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM