- IDEA 直接用菜单新建JavaFX项目, 但是这种只适合 JDK8
- 如何在IDEA下创建JavaFX项目的说明 https://openjfx.io/openjfx-docs/#IDE-Intellij
使用 Maven 创建 JavaFX 项目是较简单方便的一种方式, 不需要关心包依赖关系, 只需要手工初始化一个项目结构, 剩下的事都可以交给Maven处理.
项目结构如下, 其中resources目录下的资源文件, 可以放在 resources 根目录, 也可以放到resources/org/openjfx, 两者在App.java中的载入方式不同
2. pom.xml
指定JDK版本为11, javafx版本为17.0.1, javafx.maven.plugin使用最新的0.0.8
3. module-info.java
这里定义项目模块的可见度, 反射的可见度, 以及依赖的其他模块. 后面的opens ... to 和 exports 需要使用自己工程的包名
4. App.java
这是应用的入口. 下面的载入方式对应资源文件在根目录, 如果要按 package 放, 去掉其中的就可以了
5. PrimaryController.java
6. SecondaryController.java
7. primary.fxml
8. secondary.fxml
8. styles.css
IDEA中在App类上右键菜单, 点Run即可运行
在JDK16之前, 可以使用jlink将项目打包为带目录结构的可执行文件, 在pom中修改javafx-maven-plugin的配置
执行打包
压缩使用2时, 最终产生的lib/modules尺寸会明显小很多, 这个并不一定体现到zip包的大小上, 2产生的zip包可能比0更大