求助: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的更高版本

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

不胜感激🙏🙏🙏

相关推荐
小蓝波2 分钟前
docker 的命令
java·docker·容器
AI人工智能+电脑小能手11 分钟前
【大白话说Java面试题 第155题】【06_Spring篇】第15题:Spring 如何解决循环依赖问题?
java·spring·循环依赖·三级缓存·aop代理
唐青枫37 分钟前
Java Maven 实战指南:从 POM、依赖管理到多模块构建
java
硕风和炜1 小时前
【LeetCode: 1301. 最大得分的路径数目 + DP】
java·算法·leetcode·动态规划·dp·记忆化搜索
SamDeepThinking1 小时前
面向对象真正管理的,不是对象,而是依赖
java·后端·程序员
剑挑星河月2 小时前
94.二叉树的中序遍历
java·算法·leetcode
2301_801184752 小时前
docker 工作
java·docker·容器
老前端的功夫2 小时前
【Java从入门到入土】47:构建工具:Maven与Gradle的战争
java·python·maven
aaPIXa6222 小时前
C++模板元编程:在编译期完成计算,实现零运行时开销
java·开发语言·c++
夜郎king2 小时前
RuoYi-Vue3 企业级后台快速落地实战指南
java·开发语言