求助:macOS 运行 JavaFX 工具报错

macos在运行jar文件时崩溃

第一次写社区文章,听闻社区里有很多技术精湛的师傅,遂二月红前来求助🙏

问题是这样的,在运行jar文件时软件爆出以下错误

shell 复制代码
❯ java -jar shiro_attack-4.7.0-SNAPSHOT-all.jar
Picked up _JAVA_OPTIONS: -XX:+UnlockExperimentalVMOptions
Exception in thread "JavaFX Application Thread" java.lang.IllegalArgumentException: Both width and height must be >= 0
	at javafx.geometry.Rectangle2D.<init>(Rectangle2D.java:104)
	at javafx.stage.Screen.nativeToScreen(Screen.java:154)
	at javafx.stage.Screen.updateConfiguration(Screen.java:112)
	at javafx.stage.Screen.checkDirty(Screen.java:87)
	at javafx.stage.Screen.getPrimary(Screen.java:185)
	at com.sun.javafx.tk.quantum.QuantumToolkit.initSceneGraph(QuantumToolkit.java:320)
	at com.sun.javafx.tk.quantum.QuantumToolkit.runToolkit(QuantumToolkit.java:362)
	at com.sun.javafx.tk.quantum.QuantumToolkit.lambda$startup$10(QuantumToolkit.java:279)
	at com.sun.glass.ui.Application.lambda$run$1(Application.java:156)
	at com.sun.glass.ui.mac.MacApplication.lambda$runLoop$3(MacApplication.java:90)

这里问ai给出的回答是:JavaFX 应用在 macOS 系统上启动时,无法正确获取屏幕的尺寸信息,导致传入了无效的宽高(0 或负数),从而引发崩溃,导致了ui界面无法打开

主要报错是这一条"JavaFX Application Thread" java.lang.IllegalArgumentException: Both width and height must be >= 0

其实之前是没有爆过这个错误的,是在外接了显示屏后图像处理错误,高版本的java是移除了javafx,需要单独下载这个插件,我现在使用的是最后一个带javafx版本的java,1.8.481

shell 复制代码
❯ java -version
java version "1.8.0_481"
Java(TM) SE Runtime Environment (build 1.8.0_481-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.481-b10, mixed mode)

在此之前尝试了ai给出的建议,但都无果

  • 1.重启
  • 2.调分辨率
  • 3.使用命令强行指定屏幕尺寸
  • 4.切换java版本,使用带有javafx的更高版本

如果有师傅处理过相关问题的话还望不吝赐教🙏

不胜感激🙏🙏🙏

相关推荐
FQNmxDG4S11 分钟前
Maven依赖管理:版本冲突解决与生命周期控制
java·数据库·maven
傻瓜搬砖人28 分钟前
Spring集成Web环境
java·spring·maven
FQNmxDG4S33 分钟前
Java泛型编程:类型擦除与泛型方法的应用场景
java·开发语言·python
GottdesKrieges1 小时前
OceanBase恢复常见问题
java·数据库·oceanbase
IGAn CTOU1 小时前
Java高级开发进阶教程之系列
java·开发语言
leo825...1 小时前
Claude Code Skills 清单(本地)
java·python·ai编程
NGSI vimp1 小时前
Java进阶——如何查看Java字节码
java·开发语言
身如柳絮随风扬2 小时前
多数据源切换实战:从业务场景到3种实现方案全解析
java·分布式·微服务
Java小生不才3 小时前
Spring AI文生音
java·人工智能·spring
凯尔萨厮3 小时前
Springboot2.x+Thymeleaf项目创建
java