JavaFX 17 在 Windows 和 IntelliJ IDEA 中的完整教程
这个教程基于您的环境(JDK 17.0.15, JavaFX 17.0.15, Windows 系统, IntelliJ IDEA 2025.2.5),从下载到运行示例应用,一步步指导。假设您是初学者,我会详细解释每个步骤。如果您有特定问题(如 macOS/Linux),可以补充。
步骤 1: 下载和安装 JDK 17
JavaFX 需要 JDK 11+,我们用 17 版本。
- 下载 JDK 17.0.15:
- 从 Adoptium (推荐,免费开源) 下载 Windows x64 EXE:https://adoptium.net/temurin/releases/?version=17&os=windows&arch=x64&package=jdk
- 或 Oracle:https://www.oracle.com/java/technologies/downloads/(需账号)。
- 运行安装器:
- 安装到
D:\Program Files\Java\jdk-17(您的路径)。 - 安装后,验证:在 CMD 输入
java -version,应显示 “17.0.15”。
- 安装到
步骤 2: 下载和解压 JavaFX SDK 17
JavaFX 不包含在 JDK 中,需要单独下载。
- 下载 JavaFX SDK 17.0.15:
- 官网 (Gluon):https://download2.gluonhq.com/openjfx/17.0.15/openjfx-17.0.15_windows-x64_bin-sdk.zip
- 大小约 50 MB。
- 解压:
- 解压到
D:\Program Files\openjfx-17.0.15_windows-x64_bin-sdk\javafx-sdk-17.0.15(您的路径)。 - 确认
lib目录下有 JAR 文件如javafx.controls.jar。
- 解压到
步骤 3: 配置环境变量
在 Windows 配置,便于命令行和 IDEA 使用。
- 打开系统属性:Win + R →
sysdm.cpl→ 高级 → 环境变量。 - 系统变量(下半部分):
- 新建
JAVA_HOME:值D:\Program Files\Java\jdk-17。 - 新建
JAVAFX_HOME:值D:\Program Files\openjfx-17.0.15_windows-x64_bin-sdk\javafx-sdk-17.0.15。 - 编辑
Path:添加%JAVA_HOME%\bin。
- 新建
- 验证:在新 CMD 中:
echo %JAVA_HOME%→ 显示 JDK 路径。echo %JAVAFX_HOME%→ 显示 JavaFX 路径。java -version→ 显示 17.0.15。
步骤 4: 在命令行测试 JavaFX
创建一个简单应用验证配置。
-
创建
HelloFX.java(用记事本):import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.Label; import javafx.scene.layout.StackPane; import javafx.stage.Stage; public class HelloFX extends Application { @Override public void start(Stage stage) { Label label = new Label("Hello JavaFX!"); StackPane root = new StackPane(label); Scene scene = new Scene(root, 300, 200); stage.setScene(scene); stage.setTitle("Test"); stage.show(); } public static void main(String[] args) { launch(args); } }- 保存到任意目录,如
C:\Users\TonLin\Downloads。
- 保存到任意目录,如
-
编译和运行(在文件目录下 CMD):
javac --module-path "%JAVAFX_HOME%\lib" --add-modules javafx.controls HelloFX.java java --module-path "%JAVAFX_HOME%\lib" --add-modules javafx.controls --class-path . HelloFX- 成功:弹出窗口显示 “Hello JavaFX!”。
- 错误排查:如果 ClassNotFound,添加
--class-path .;路径错,用绝对路径替换%JAVAFX_HOME%。
步骤 5: 在 IntelliJ IDEA 配置和运行
-
打开/创建项目:
- File > New > Project > Java > Next。
- Project SDK:添加 JDK 17(浏览到
D:\Program Files\Java\jdk-17)。 - 命名项目如 “untitled”。
-
配置 JavaFX 库:
- File > Project Structure (Ctrl + Alt + Shift + S)。
- Project:SDK 为 JDK 17,Language Level 为 17。
- Libraries:+ > Java > 浏览到
D:\Program Files\openjfx-17.0.15_windows-x64_bin-sdk\javafx-sdk-17.0.15\lib,添加所有 JAR,命名 “javafx-sdk-17”。 - Modules > Dependencies:添加 “javafx-sdk-17” 到 Modulepath(非 Classpath)。
-
添加示例代码:
- src 下右键 New > Java Class >
HelloFX。 - 粘贴步骤 4 的代码(无包声明,如果非模块化)。
- src 下右键 New > Java Class >
-
配置运行:
- Run > Edit Configurations > + > Application。
- Name: HelloFX。
- Main class: HelloFX。
- VM options:
--module-path "D:\Program Files\openjfx-17.0.15_windows-x64_bin-sdk\javafx-sdk-17.0.15\lib" --add-modules javafx.controls - OK,然后运行(绿色按钮)。
-
模块化选项(可选,推荐高级用户):
- src 下添加
module-info.java:module untitled { requires javafx.controls; } - 为 HelloFX 添加包:文件顶部
package com.example;。 - Main class 改为
com.example.HelloFX。 - 运行时添加
exports com.example;到 module-info。
- src 下添加
常见问题与排查
| 问题 | 原因 | 解决 |
|---|---|---|
| “缺少 JavaFX 运行时组件” | 未用 --module-path | 添加 VM options 或检查库在 Modulepath。 |
| ClassNotFoundException | 无 --class-path . (CMD) 或包错 | 添加 . 或确认包结构。 |
| InvalidModuleDescriptor | 顶层类文件 | Build > Clean & Rebuild;删除 out 目录。 |
| 路径错误 | 环境变量错 | 用 echo 检查;用绝对路径测试。 |
| 窗口不弹出 | 图形驱动问题 | 更新 Windows/显卡驱动;关闭杀毒。 |
高级扩展
- Scene Builder:下载 https://gluonhq.com/products/scene-builder/,设计 FXML UI,在 IDEA 集成(Preferences > Languages > JavaFX)。
- 添加控件:如 Button,import
javafx.scene.control.Button,添加到 StackPane。 - 构建可执行:用 Maven/Gradle + javafx-maven-plugin 打包 JAR。
教程结束!如果运行示例成功,您可以开始开发更复杂的应用。如果报错,贴日志我帮调试。享受 JavaFX 吧!