Mac系统Eclipse运行JavaFX时java.lang.module.FindException问题解决方法
解决JavaFX模块找不到的问题
一、先排查基础配置问题
- 确认下载的JavaFX SDK版本和你的JDK版本匹配(比如JDK11对应JavaFX11及以上,JDK8对应JavaFX8)
- 右键项目 → Build Path → Add Libraries → User Library → 新建一个名为JavaFX的库,点击
Add External JARs选中JavaFX SDK文件夹里lib目录下的所有jar包,确保这个库已添加到项目Build Path且无红色报错
二、配置运行VM参数(核心步骤)
- 右键主类 → Run As → Run Configurations
- 切换到
Arguments标签页,在VM arguments中添加以下代码(把PATH_TO_FX替换成你本地JavaFX SDK的lib文件夹绝对路径):
示例:Windows路径可能是--module-path "PATH_TO_FX" --add-modules javafx.controls,javafx.fxmlC:\javafx-sdk-21\lib,Mac路径可能是/Users/xxx/javafx-sdk-21/lib,路径带空格必须加引号
三、检查模块声明文件
- 如果项目有
module-info.java(模块化项目),必须声明依赖:module 你的模块名 { requires javafx.controls; exports 你的主类所在包名; // 比如你的主类在com.example包,就写exports com.example; } - 非模块化项目可以直接删除
module-info.java,避免模块冲突
四、验证插件配置(若安装了e(fx)clipse)
- 若用了Eclipse的JavaFX插件,创建项目时要指定正确的JavaFX SDK路径
- 手动导入的旧项目,插件不会自动补全参数,还是要手动检查上述配置
最容易踩的坑:只配置了Build Path但没加VM参数,或者路径写错、版本不匹配,这些都会导致模块找不到。
内容的提问来源于stack exchange,提问作者james brown
相关产品推荐
相关产品推荐

