下载安装JavaFX及解决报错:缺少 JavaFX 运行时组件, 需要使用该组件来运行此应用程序|Eclipse

目录

1.下载并解压

 2.Eclipse配置

3.报错问题

解决方法1:将javaSE更改到9以下

解决方法2: 使用module-info.java配置解决


1.下载并解压

  • JavaFX下载地址:JavaFX - Gluon

选择合适自己电脑配置的sdk版本下载

  • 打不开网页的参考这个博客,这个博主写的是idea的下载方法: (idea版本)下载javaFX和配置环境详细大全_javafx下载-CSDN博客
  • 下载后的文件名如下图所示:

  • jar文件:

 2.Eclipse配置

  • 建议新建一个Java Project,因为配置的时候其他文件容易出错

在新建的Project上右键 -> Build Path -> Configure Build Path...

鼠标点在Modulepath上,点击右侧的Add Library...

点击User LibraryNext > 

点击New -〉 命名(名称随意,只要代表javafx)-〉 OK

 

保存更改并关闭

3.报错问题

最常见的错误是:

这个错误提示“错误: 缺少 JavaFX 运行时组件, 需要使用该组件来运行此应用程序”通常表明尽管 JavaFX 的类可能在编译时被找到(因为可能你的开发环境已经配置好了),但在运行时 JVM(Java 虚拟机)无法在类路径(classpath)或模块路径(module-path,对于 Java 9 及更高版本)中找到 JavaFX 的运行时库。

对于 Java 8,JavaFX 是 JDK 的一部分,但通常不包含在 JRE(Java 运行时环境)中。如果你的应用程序是作为独立的 JAR 文件运行的,并且你没有将 JavaFX 的库包含在 JAR 文件中或作为外部库指定给 JVM,那么就会出现这个错误。

解决方法1:将javaSE更改到9以下

解决方法2: 使用module-info.java配置解决

在文件最顶部或最底部找到这个文件,没有找到可能是在默认包中或者创建项目时没有勾选Create module-info.java file

这里就不需要将javaSE更改了,因为module-info.java在javaSE低于9时会报错

代码展示(JavaFX和chapter_14是我的项目名和包名,请更换成自己的项目和包的名字):

module JavaFX {
	requires javafx.controls;
	requires javafx.fxml;
	
	opens chapter_14 to javafx.fxml;
	exports chapter_14;
	
}

这里注意一定要把JavaFX放在Modulepath中

示例代码:

package chapter_14;

import javafx.application.Application;  
import javafx.scene.Scene;  
import javafx.scene.control.Button;  
import javafx.scene.layout.StackPane;  
import javafx.stage.Stage;  
  
public class 程序清单14_1MyJavaFX extends Application {  
    @Override  
    public void start(Stage primaryStage) throws Exception {  
        Button btOK = new Button("OK");  
        StackPane root = new StackPane();  
        root.getChildren().add(btOK);  
        Scene scene = new Scene(root, 200, 250);  
        primaryStage.setTitle("MyJavaFX");  
        primaryStage.setScene(scene);  
        primaryStage.show();  
    }  
  
    public static void main(String[] args) {  
        Application.launch(args);  
    }  
}

输出结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/782817.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Demeditec Diagnostics — AMH ELISA试剂盒

抗缪勒氏管激素(AMH),是一种二聚体分子量为140 KDa的糖蛋白,是转化生长因子-β (TGF-β)细胞因子家族,在生殖结构正常分化中起重要作用。AMH已被被确定为卵巢储备的可靠标志,有助于预测早期卵泡丢失和更年期开始。AMH水平也反映了…

【Python画图-seaborn驯化】一文学会seaborn画因子变量图catplot函数使用技巧

【Python画图-seaborn驯化】一文学会seaborn画因子变量图catplot函数使用技巧 本次修炼方法请往下查看 🌈 欢迎莅临我的个人主页 👈这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合,智慧小天地! 🎇 免费获取相关内…

【运营版】公众号接口回调出租用出售微信公众号多域名无限回调授权系统+接口文档

此系统用于微信无限回调单个用户授权,如你的无限回调借给他人使用,怕他人泛滥您的无限回调,导致您的域名或者公众号经常封,那么你们可以用此系统给他们设置一个授权使用权限,如给指定域名添加授权登录,那么…

【Linux】目录的相关命令——cd,pwd,mkdir,rmdir

1.相对路径与绝对路径 在开始目录的切换之前,你必须要先了解一下所谓的路径(PATH),有趣的是:什么是相对路 与绝对路径? 绝对路径:路径的写法“一定由根目录/写起”,例如:/usr/shar…

间接平差——以水准网平差为例 (matlab详细过程版)

目录 一、原理概述二、案例分析三、代码实现四、结果展示本文由CSDN点云侠原创,间接平差——以水准网平差为例 (matlab详细过程版),爬虫自重。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫与GPT生成的文章。 一、原理概述 间接平差的函数模型和随机模型…

深入分析 Android BroadcastReceiver (十)(完)

文章目录 深入分析 Android BroadcastReceiver (十)1. 深入理解 Android 广播机制的高级应用与实践1.1 高级应用1.1.1 示例:广播启动服务1.1.2 示例:数据变化通知1.1.3 示例:下载完成通知 1.2 实践建议1.2.1 设置权限1.2.2 动态注册和注销广播…

零基础STM32单片机编程入门(十) 28BYJ-48步进电机的控制实战含源码视频

文章目录 一.概要二.28BYJ-48步进电机介绍三.步进电机的主要特性四.步进电机驱动1.驱动硬件介绍2.四相八拍程序控制介绍 五.STM32单片机驱动步进电机正转反转实验六.CubeMX工程源代码下载七.讲解视频链接地址八.小结 一.概要 步进电机是将电脉冲信号转变为角位移或线位移的开环…

102.二叉树的层序遍历——二叉树专题复习

迭代方式&#xff1a; class Solution {// 定义一个成员变量res来存储层序遍历的结果List<List<Integer>> res new ArrayList<>();// levelOrder方法是层序遍历的接口&#xff0c;它接受一个二叉树的根节点rootpublic List<List<Integer>> lev…

开展新版FMEA培训如何避免陷入形式主义?

在企业中开展新版FMEA培训&#xff0c;旨在提升员工对产品潜在故障及其影响的识别、评估和控制能力&#xff0c;从而增强产品质量和可靠性。然而&#xff0c;不少企业在开展新版FMEA培训时往往容易陷入形式主义&#xff0c;导致培训效果不佳。为了避免这种情况&#xff0c;我们…

视频压缩软件哪个压缩最小,视频用什么软件压缩最小

在数字媒体时代&#xff0c;视频内容的生产与分享已成为生活常态。但随之而来的问题就是&#xff0c;大视频文件占用过多存储空间&#xff0c;上传和分享也变得不便。本文将为你揭示如何将视频压缩到最小&#xff0c;同时保持画质清晰。让我们一起探索吧&#xff01; 下载并文件…

Java SE 9模块化系统。

JDK 9模块化介绍 介绍Java SE 9&#xff1a;拼图项目1.拼图项目将引入Java SE 9的全新概念&#xff1a;Java模块系统。2.Java模块解决了什么问题3.细节描述 Java SE 9模块系统的优点1.由于Java SE 9将把JDK&#xff0c;JRE&#xff0c;JAR等分成较小的模块&#xff0c;因此我们…

程序员必知的 89 个操作系统核心概念

1. 操作系统&#xff08;Operating System&#xff0c;OS&#xff09;&#xff1a;是管理计算机硬件与软件资源的系统软件&#xff0c;同时也是计算机系统的内核与基石。操作系统需要处理管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系…

Spring Boot源码概述及应用案例

文章目录 Spring Boot源码关键点应用案例&#xff1a;构建一个简单的Spring Boot Web应用1. 创建项目2. 主类3. 添加用户实体4. 创建用户服务5. 创建REST控制器6. 运行和测试应用 深入与扩展1. 数据持久化2. 安全性增强 Spring Boot源码关键点 Spring Boot 的源码设计遵循模块…

SQLServer的系统数据库用别的服务器上的系统数据库替换后做跨服务器连接时出现凭证、非对称金钥或私密金钥的资料无效

出错作业背景&#xff1a; 公司的某个sqlserver服务器要做迁移&#xff0c;由于该sqlserver服务器上数据库很多&#xff0c;并且做了很多的job和维护计划&#xff0c;重新安装的sqlserver这些都是空的&#xff0c;于是就想到了把系统4个系统数据库进行替换&#xff0c;然后也把…

LeetCode热题100刷题8:54. 螺旋矩阵、73. 矩阵置零、48. 旋转图像

54. 螺旋矩阵 class Solution { public:vector<int> spiralOrder(vector<vector<int>>& matrix) {vector<int> vec;if(matrix.empty())return vec;int left0;int right matrix[0].size()-1;int up0;int down matrix.size()-1;while(true) {for(i…

flask、fastapi在服务器制作接口携参访问返回参数

flask创建接口&#xff1a; 一、安装python 官网下载Download Python | Python.org 二、安装flask 在选择的文件夹路径cmd调用bash安装 pip install Flask三、创建flask应用 # app.py from flask import Flask, request, jsonify app Flask(__name__) app.route(/ech…

如何选择合适的PCB表面处理工艺?

在PCB制造中应用PCB表面处理至关重要&#xff0c;以保护铜迹线不受氧化和环境污染物的侵蚀&#xff0c;这些污染物会降低性能。这些PCB表面处理可以防止水分、灰尘、化学物质和极端温度的侵入&#xff0c;防止PCB材料的腐蚀。它们还有助于在组装过程中有效焊接和粘合&#xff0…

240707_昇思学习打卡-Day19-基于MindSpore通过GPT实现情感分类

240707_昇思学习打卡-Day19-基于MindSpore通过GPT实现情感分类 今天基于GPT实现一个情感分类的功能&#xff0c;假设已经安装好了MindSpore环境。 # 该案例在 mindnlp 0.3.1 版本完成适配&#xff0c;如果发现案例跑不通&#xff0c;可以指定mindnlp版本&#xff0c;执行!pip…

Git 查看、新建、删除、切换分支

Git 是一个版本控制系统&#xff0c;软件开发者用它来跟踪应用程序的变化并进行项目协作。 分支的诞生便于开发人员在彼此独立的环境中进行开发工作。主分支&#xff08;通常是 main 或 master&#xff09;可以保持稳定&#xff0c;而新的功能或修复可以在单独的分支中进行开发…

STM32智能无人机控制系统教程

目录 引言环境准备智能无人机控制系统基础代码实现&#xff1a;实现智能无人机控制系统 4.1 数据采集模块 4.2 数据处理与飞行控制 4.3 通信与导航系统实现 4.4 用户界面与数据可视化应用场景&#xff1a;无人机应用与优化问题解决方案与优化收尾与总结 1. 引言 智能无人机控…