在jdk10之前,javafx是集成在jdk之中的,无需另外导入,而在jdk10之后,就需要单独配置了
本文主要介绍在IDEA中配置javafx的过程,参考了JetBrain的help文档Create a new JavaFX project
下载Javafx sdk
首先在官网 JavaFX 下载最新版本的Javafx sdk
选择对应的版本即可,下载后将其放置到常用的位置,我将其直接放置在Download目录下
/Users/xxx/Downloads/javafx-sdk-11.0.2
IDEA 配置Javafx
首先新建一个Javafx项目
打开后发现是这样的(一片红就没啥好事~~~)
找了一圈才发现在Jdk10之后就将javafx从jdk中分离出来了,需要另外导入,这在前面已经提到过,接下来介绍如何在项目中导入javafx
修改项目配置
File
-> Project Structure
或快捷键 ⌘ + ;
- 在左侧工具栏选择
Libraries
,点击图中的‘+’
,选择Java
- 接下来选择之前下载的javafx sdk的地址(注意这里选择的是lib文件夹),点击open
- 之后出现的弹窗均选择OK即可,随后可以看到如下界面,选择apply,将刚才的配置应用到项目中
- 在这之后,可以看到项目中的一片红就消失了,However,运行一下,仍然有问题
添加运行时JVM参数
这个问题找了很久才找到答案,需要修改JVM参数才可以正确运行
- 修改Main.java的运行参数,这在IDEA中比较简单,按照图中的顺序点击
Main
->Edit Configurations
- 在 Vm options 一栏中点击图中圈出的位置,输入以下内容
--module-path
/Users/xxx/Downloads/javafx-sdk-11.0.2/lib //在这里填入之前下载的javafx-sdk的位置
--add-modules
javafx.controls,javafx.fxml
⚠️注意
- 如果你的jdk11以及之后的版本,添加上面的内容即可
- 如果你使用的是jdk14,则需要另外增加一条命令,即
--module-path
/Users/xxx/Downloads/javafx-sdk-11.0.2/lib //在这里填入之前下载的javafx-sdk的位置
--add-modules
javafx.controls,javafx.fxml
--add-exports javafx.graphics/com.sun.javafx.sg.prism=ALL-UNNAMED
由于我使用的是jdk12,故填入以下内容
运行程序
配置完成后,再次运行程序,结果如下(总算成功🤦♂️)