0

0

如何使用 JavaFX 和 Gluon 构建可成功导出的 Android 应用

碧海醫心

碧海醫心

发布时间:2026-01-03 16:43:23

|

719人浏览过

|

来源于php中文网

原创

如何使用 JavaFX 和 Gluon 构建可成功导出的 Android 应用

javafx 本身不原生支持 android,但借助 gluon 提供的移动开发工具链(如 gluon mobile),开发者可用 javafx 编写跨平台应用,并打包为可在 android 设备上运行的 apk 或 aab。本文详解从环境配置到构建部署的完整流程。

JavaFX 是一个功能强大的桌面 GUI 框架,但它默认不支持 Android 或 iOS 平台——JVM 在移动端并不直接运行标准 Java SE 类库,且 Android 使用的是 ART 运行时与 Dalvik 字节码,而非传统 JVM。因此,单纯在 VS Code 中配置 JavaFX SDK 并编写 FXML/Controller 代码,无法直接导出为 Android 应用

要真正实现“用 JavaFX 开发 Android 应用”,必须借助 Gluon Mobile ——一个由 GluonHQ 维护的开源框架,它将 JavaFX 的 UI 能力桥接到原生移动平台。其核心原理是:

  • 使用 GraalVM 将 Java 字节码提前编译(AOT)为原生 ARM/x86 机器码;
  • 通过 Gluon’s Charm Down API 访问设备能力(如相机、位置、通知);
  • 利用 Gluon Substrate 工具链生成符合 Google Play 要求的 Android APK/AAB 包。

✅ 正确路径如下(适用于初学者):

  1. 环境准备(必需)

    立即学习Java免费学习笔记(深入)”;

    青辰印刷综合业务管理系统(含网站WEB程序)2.0
    青辰印刷综合业务管理系统(含网站WEB程序)2.0

    易学易用:友好的系统操作界面,无须具备专业知识,即可熟练的使用系统。功能完善:具备新建、修改、明细、审批、导入、导出、删除、批量、打印等功能。模型开发:自定义表单字段选项零代码二次开发,可无限扩展后台功能模块。 维护方便:基于互联网技术B/S体系结构,实施快速,极大的减少系统升级维护工作。售后保证:专业的技术研发团队,可提供可靠的产品迭代、版本升级和技术支持服务。超低成本:一次投入终身使用、用户不

    下载
    • 安装 JDK 17(Gluon Mobile 当前推荐版本,不支持 JDK 21+
    • 安装 Android SDK(含 platform-tools、build-tools、platforms;android-34、ndk;25.1.8937393)
    • 配置环境变量:ANDROID_HOME、JAVA_HOME、PATH
    • 安装 Gluon Client Maven 插件(无需单独下载,通过 pom.xml 声明即可)
  2. 创建项目(推荐使用 Maven 模板)
    在终端执行(确保已安装 Maven):

    mvn archetype:generate \
      -DarchetypeGroupId=com.gluonhq \
      -DarchetypeArtifactId=client-maven-archetype \
      -DarchetypeVersion=0.1.19 \
      -DgroupId=com.example \
      -DartifactId=my-javafx-android-app \
      -Dversion=1.0.0-SNAPSHOT

    该命令会生成包含 JavaFX + Gluon Mobile 结构的标准项目。

  3. 关键配置(pom.xml 片段)
    确保启用 Android 目标平台:

    <plugin>
        <groupId>com.gluonhq</groupId>
        <artifactId>client-maven-plugin</artifactId>
        <configuration>
            <target>android</target>
            <mainClass>com.example.MyApp</mainClass>
            <androidSdkPath>${env.ANDROID_HOME}</androidSdkPath>
        </configuration>
    </plugin>
  4. 构建并部署

    mvn clean client:build client:package -Pandroid
    # 输出路径:target/client/aarch64-android/my-javafx-android-app.apk
    adb install target/client/aarch64-android/my-javafx-android-app.apk

⚠️ 重要注意事项:

  • VS Code 不是 Gluon 官方推荐 IDE(IntelliJ IDEA + Gluon Plugin 支持最佳),但可通过配置 Java/Maven 扩展链实现开发;建议初学者先用 IntelliJ 社区版验证流程。
  • Gluon Mobile 不兼容 JavaFX 18+ 的独立模块化构建方式,必须使用 Gluon 提供的 javafx-base, javafx-controls 等定制化依赖(由 client-maven-plugin 自动引入)。
  • 所有 UI 必须基于 View, Drawer, BottomNavigation 等 Gluon Mobile 组件构建,而非直接使用 Stage/Scene(移动端无窗口概念)。

? 总结:JavaFX for Android ≠ “把桌面程序移植过去”,而是采用 Gluon Mobile 的声明式 UI + 原生绑定模型进行全新开发。它不是“JavaFX 的 Android 版”,而是一个以 JavaFX 语法为表、以移动原生体验为里的跨端解决方案。对于初学者,强烈建议从 Gluon 官方文档Foojay 教程系列 入手,循序渐进实践 Hello World → 生命周期管理 → 设备 API 调用。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
Java Maven专题
Java Maven专题

本专题聚焦 Java 主流构建工具 Maven 的学习与应用,系统讲解项目结构、依赖管理、插件使用、生命周期与多模块项目配置。通过企业管理系统、Web 应用与微服务项目实战,帮助学员全面掌握 Maven 在 Java 项目构建与团队协作中的核心技能。

0

2025.09.15

pdf怎么转换成xml格式
pdf怎么转换成xml格式

将 pdf 转换为 xml 的方法:1. 使用在线转换器;2. 使用桌面软件(如 adobe acrobat、itext);3. 使用命令行工具(如 pdftoxml)。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1936

2024.04.01

xml怎么变成word
xml怎么变成word

步骤:1. 导入 xml 文件;2. 选择 xml 结构;3. 映射 xml 元素到 word 元素;4. 生成 word 文档。提示:确保 xml 文件结构良好,并预览 word 文档以验证转换是否成功。想了解更多xml的相关内容,可以阅读本专题下面的文章。

2112

2024.08.01

xml是什么格式的文件
xml是什么格式的文件

xml是一种纯文本格式的文件。xml指的是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。想了解更多相关的内容,可阅读本专题下面的相关文章。

1142

2024.11.28

idea快捷键大全
idea快捷键大全

本专题为大家提供idea快捷键相关的文章,帮助大家解决问题。

173

2023.08.03

idea如何集成Tomcat
idea如何集成Tomcat

idea集成Tomcat的步骤:1、添加Tomcat服务器配置;2、配置项目部署;3、运行Tomcat服务器;4、访问项目;5、注意事项;6、关闭Tomcat服务器。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

171

2024.02.23

idea怎么配置maven
idea怎么配置maven

idea配置maven的步骤:1、打开intellij idea,并确保已安装maven integration插件,可以在"file"菜单中选择"settings",然后在"plugins"选项卡中搜索并安装maven integration插件等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

127

2024.02.23

eclipse和idea有什么区别
eclipse和idea有什么区别

eclipse和idea的区别:1、平台支持;2、内存占用;3、插件系统;4、智能代码提示;5、界面设计;6、调试功能;7、学习曲线。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

148

2024.02.23

Golang 测试体系与代码质量保障:工程级可靠性建设
Golang 测试体系与代码质量保障:工程级可靠性建设

Go语言测试体系与代码质量保障聚焦于构建工程级可靠性系统。本专题深入解析Go的测试工具链(如go test)、单元测试、集成测试及端到端测试实践,结合代码覆盖率分析、静态代码扫描(如go vet)和动态分析工具,建立全链路质量监控机制。通过自动化测试框架、持续集成(CI)流水线配置及代码审查规范,实现测试用例管理、缺陷追踪与质量门禁控制,确保代码健壮性与可维护性,为高可靠性工程系统提供质量保障。

6

2026.02.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Kotlin 教程
Kotlin 教程

共23课时 | 4万人学习

C# 教程
C# 教程

共94课时 | 10.4万人学习

Java 教程
Java 教程

共578课时 | 74.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号