解决javafx组件缺失导致运行程序报错的问题
今天在运行密探工具的时候发现弹出了一个报错
java -jar mitan-jar-with-dependencies.jar
错误: 缺少 JavaFX 运行时组件, 需要使用该组件来运行此应用程序
之前就遇到过这个问题,但是没有进行记录,导致很多次遇到后不能及时找到解决方法,这次正好记录一下
问题解析
这个问题其实就是java8版本之后将javafx组件进行去除了,在运行程序时是需要用到javafx的组件进行界面渲染的,如果执行程序不需要渲染界面应该不会遇到这个问题
解决方法
解决方法有很多种,但是基本原理就是自己下载一个javafx组件包然后加载到运行程序过程中;
我这里是在程序运行时手动添加组件库,
java --module-path "E:\burp\javafx-sdk-15\lib" --add-modules javafx.controls,javafx.fxml -jar mitan-jar-with-dependencies.jar
这里需要到官网下载对应的javafx组件,我用的是jdk15,所以下载了javafx-sdk-15的组件,上面代码的绝对路径需要替换成自己下载文件的位置
这种方法只能治标不治本,不过我只是运行工具的时候才用java,这已经够用了
下面是两篇解决方法的参考文章,感兴趣的可以研究一下
jar 错误: 缺少 JavaFX 运行时组件, 需要使用该组件来运行此应用程序_mob64ca12f43142的技术博客_51CTO博客
简单解决javaFX缺少运行时组件,需要使用该组件来运行此应用程序。_maven_baoweizugong-腾讯云开发者社区