javaFX(二)-使用gradle+jdk14创建javafx程序

本文介绍了如何使用Gradle 6.3及以上版本和openJDK14构建一个JavaFX的Hello World程序。主要内容包括环境准备、项目文件结构、主要代码(build.gradle、fxml和主类)、启动效果以及开源代码链接。作者分享了学习JavaFX的原因,并提供了一个用于查看K8s日志的工具项目,鼓励有问题的读者进行反馈。

在上一篇文章中,我们一起学习了jlink和jdk14的模块化. 在本篇文章中,我们一起来学习gradle来新建一个javafx的Hello World 程序.

本文中这段最重要

这段准备讲一下, 为什么要学习javafx, 小刀学这个, 是出于自己的兴趣,当时是公司用的k8s,但是想看日志啥的,还要先打开网页,登录阿里云,然后选对应的集群,然后找到对应的命名空间,然后找到对应的容器组,然后再点日志. 一个还好, 要是有两个以上的容器组,看日志就相当的麻烦了.


然后我就做了这个可以直接查看k8s日志的东东. 写着写着, 就想,其实可以把改host, 连redis,连数据库这些简单的小功能都做一起. 然后做着做着,就有了小刀平时在朋友圈发的工具. 然后现在陆陆续续写了几个月了, 自我感觉对javaFX的一些常用的方法和坑都踩了一些,所以开始更新javaFX系列. 希望能对大家有所帮助 工具包下载地址: https://download.lixiang.red/sunflower/current/ 

有什么问题,欢迎反馈给小刀~

环境准备

  • gradle 6.3及以上(因为6.3之后才开始支持jdk14)

  • openJDK14(上篇文章有小伙伴留言说jdk14商用不免费,我们这里特别声明了是openJDK14)

  • idea 社区版 2020.1及以上(其实社区版功能完全是够用的)

  • 小刀的微信交流群(一个人学哪行, 来, 这里有很多少伙伴陪你一起呢)

文件结构

和平常的gradle项目没有什么两样, 文件结构如下所示: 

这也是最简的javafx程序的结构,有一个fxml做页面布局,

Spring Boot 对 JavaFX 的支持主要通过第三方库 `spring-boot-javafx-support` 提供,该库旨在简化 JavaFX 应用程序与 Spring Boot 框架的集成。随着 JDK 版本的更新,特别是从 JDK 8 过渡到更高版本(如 JDK 11 和 JDK 17),开发者需要确保所使用的 `spring-boot-javafx-support` 版本与其目标 JDK 兼容。 对于 **JDK 17**,推荐使用 `spring-boot-javafx-support` 的 **3.0.0 及以上版本**。这些版本已经针对 Spring Boot 2.5+JavaFX 17(即 Gluon 的 JavaFX SDK)进行了优化,并且能够很好地与 JDK 17 一起工作。此外,3.x 系列版本引入了对模块化系统(JPMS)的更好支持,这对于使用 JDK 9 及以上版本的项目尤为重要[^1]。 为了确保兼容性,建议在项目的 `pom.xml` 文件中明确指定 `spring-boot-starter-parent` 的版本为 2.5 或更高,并且将 `spring-boot-javafx-support` 的依赖版本设置为 3.0.0 或更新的稳定版本。以下是 Maven 配置的一个示例片段: ```xml <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.6.4</version> <relativePath/> <!-- lookup parent from repository --> </parent> <dependencies> <dependency> <groupId>org.openjfx</groupId> <artifactId>javafx-controls</artifactId> <version>17.0.2</version> </dependency> <dependency> <groupId>org.openjfx</groupId> <artifactId>javafx-fxml</artifactId> <version>17.0.2</version> </dependency> <dependency> <groupId>com.guigarage</groupId> <artifactId>spring-boot-javafx-support</artifactId> <version>3.0.0</version> </dependency> </dependencies> ``` 同时,由于 JDK 17 是一个长期支持版本(TLS),它包含了对 JavaFX 的支持,但不再是 JDK 的一部分。因此,在使用 JDK 17 构建 JavaFX 应用时,必须单独下载并配置 JavaFX SDK,或者通过 Maven 或 Gradle 等构建工具直接引入 JavaFX 的依赖项。 在开发过程中,还需要注意一些潜在的问题,例如模块路径(module path)与类路径(class path)之间的差异,以及如何正确地启动 JavaFX 应用程序。Spring Boot 提供了一些工具和抽象来帮助开发者处理这些问题,使得即使在较新的 JDK 版本上也能轻松地进行 JavaFX 应用的开发。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值