Mac端Oracle SQL Developer无法启动:提示“Module javafx.base not found”
Mac上Oracle SQL Developer启动报错
java.lang.module.FindException: Module javafx.base not found的解决办法 问题原因
你下载的“Mac OSX with JDK 17 included”版本虽捆绑了JDK 17,但可能缺少JavaFX模块或配置未正确指向JavaFX路径,导致启动时无法找到javafx.base模块。
解决步骤
1. 修正SQL Developer配置文件
- 找到配置文件路径:
/Applications/SQLDeveloper.app/Contents/Resources/sqldeveloper/sqldeveloper/bin/sqldeveloper.conf - 用文本编辑器打开该文件,确保以下配置正确:
- 确认JDK路径配置:
SetJavaHome /Applications/SQLDeveloper.app/Contents/Resources/sqldeveloper/jdk - 添加JavaFX模块路径配置(如果SQL Developer自带JavaFX,路径通常为
/Applications/SQLDeveloper.app/Contents/Resources/sqldeveloper/javafx/lib;若没有则需先下载适配JDK17的JavaFX SDK):AddVMOption --module-path=/Applications/SQLDeveloper.app/Contents/Resources/sqldeveloper/javafx/lib AddVMOption --add-modules=javafx.base,javafx.controls,javafx.fxml,javafx.graphics,javafx.web
- 确认JDK路径配置:
2. 终端手动指定JavaFX运行
- 打开终端,进入SQL Developer的bin目录:
cd /Applications/SQLDeveloper.app/Contents/Resources/sqldeveloper/sqldeveloper/bin - 运行启动命令,替换
<javafx-lib-path>为实际JavaFX lib路径(若自带则用../javafx/lib,若自行下载则用SDK的lib路径):./sqldeveloper.sh --module-path <javafx-lib-path> --add-modules javafx.base,javafx.controls,javafx.fxml,javafx.graphics,javafx.web
3. 验证版本兼容性
- 检查自带JDK版本:
/Applications/SQLDeveloper.app/Contents/Resources/sqldeveloper/jdk/bin/java -version - 若需自行下载JavaFX SDK,必须选择与JDK17版本完全匹配的版本,避免模块不兼容。
4. 重置用户配置(可选)
- 若上述方法无效,删除旧配置文件夹后重启:
rm -rf ~/Library/Application\ Support/SQLDeveloper
内容的提问来源于stack exchange,提问作者March
相关产品推荐
相关产品推荐

