You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从GitLab克隆的Maven项目无法找到JavaFX模块求助

问题:Maven构建JavaFX项目时提示找不到JavaFX模块

从GitLab克隆了一个Maven构建的JavaFX项目,仅通过Maven引入依赖,未使用外部JAR包。构建时出现无法找到JavaFX模块的错误。

相关代码如下:

module-info.java

module com.example.fluganzeigetafel {
    requires javafx.controls;
    requires javafx.fxml;
    requires java.desktop;


    requires com.google.zxing;
    requires pdfbox.app;

    opens com.example.fluganzeigetafel.Contract to javafx.base;
    opens com.example.fluganzeigetafel to javafx.fxml;
    exports com.example.fluganzeigetafel;
    exports com.example.fluganzeigetafel.Controller;
    opens com.example.fluganzeigetafel.Controller to javafx.fxml;
    exports com.example.fluganzeigetafel.Manager;
    opens com.example.fluganzeigetafel.Manager to javafx.fxml;
    exports com.example.fluganzeigetafel.Utility;
    opens com.example.fluganzeigetafel.Utility to javafx.fxml;
    exports com.example.fluganzeigetafel.CustomDialogs;
    opens com.example.fluganzeigetafel.CustomDialogs to javafx.fxml;
    exports com.example.fluganzeigetafel.Data;
    opens com.example.fluganzeigetafel.Data to javafx.fxml;
    exports com.example.fluganzeigetafel.Handler;
    opens com.example.fluganzeigetafel.Handler to javafx.fxml;
}

pom.xml片段

<dependency>
    <groupId>org.openjfx</groupId>
    <artifactId>javafx-controls</artifactId>
    <version>19-ea+7</version>
</dependency>

<dependency>
    <groupId>org.openjfx</groupId>
    <artifactId>javafx-fxml</artifactId>
    <version>19-ea+7</version>
</dependency>

解决方案
  1. 添加OpenJFX Maven插件
    JavaFX模块化项目仅声明依赖不足以让Maven正确识别模块,需添加专用插件来处理模块路径。在pom.xml的<build>标签内加入以下配置:
<plugins>
    <plugin>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-maven-plugin</artifactId>
        <version>0.0.8</version>
        <configuration>
            <mainClass>com.example.fluganzeigetafel.Main</mainClass>
            <moduleName>com.example.fluganzeigetafel</moduleName>
        </configuration>
    </plugin>
</plugins>

注意将mainClass替换为项目实际的主类全路径。

  1. 核对Java版本兼容性
    JavaFX 19要求JDK版本不低于11,执行java -version命令确认本地JDK版本符合要求。

  2. 替换为稳定版依赖
    当前使用的是JavaFX 19的早期预览版(19-ea+7),存在兼容性风险,建议替换为正式稳定版:

<dependency>
    <groupId>org.openjfx</groupId>
    <artifactId>javafx-controls</artifactId>
    <version>19</version>
</dependency>
<dependency>
    <groupId>org.openjfx</groupId>
    <artifactId>javafx-fxml</artifactId>
    <version>19</version>
</dependency>
  1. 清理并重新加载依赖
    若依赖未正确下载,执行以下命令清理Maven缓存并重新构建:
mvn clean install -U

内容的提问来源于stack exchange,提问作者AgonLat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 00:00:29