当前位置: 首页 > 知识库问答 >
问题:

缺少JavaFX运行时组件,使用maven、intellij[重复]

养星汉
2023-03-14

我在open sdk 11.0.12中使用IntelliJ。我有一个基于maven的项目。我从空项目开始,并添加了一些依赖项。我正在创建JavaFX应用程序。

我的pom。xml文件如下所示:

<?xml version="1.0" encoding="UTF-8"?>

4.0.0

<groupId>org.example</groupId>
<artifactId>kalkulator</artifactId>
<version>1.0-SNAPSHOT</version>

<build>
    <plugins>
        <plugin>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-maven-plugin</artifactId>
            <version>0.0.8</version>
            <executions>
                <execution>
                    <id>run</id>
                    <configuration>
                        <mainClass>project.Main</mainClass>
                    </configuration>
                </execution>
                <execution>
                    <id>debug</id>
                    <configuration>
                        <mainClass>project.Main</mainClass>
                        <options>
                            <option>-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=*:8000</option>
                        </options>
                    </configuration>
                </execution>
            </executions>
            <configuration>
                <mainClass>${project.mainClass}</mainClass>
            </configuration>
        </plugin>
    </plugins>
</build>

<dependencies>
    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-engine</artifactId>
        <version>5.1.0</version>
        <scope>test</scope>
    </dependency>
    <!-- JavaFX -->
    <dependency>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-controls</artifactId>
        <version>17</version>
    </dependency>
    <dependency>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-fxml</artifactId>
        <version>17</version>
    </dependency>
    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-client</artifactId>
        <version>5.0.0.Final</version>
    </dependency>
</dependencies>

<properties>
    <project.mainClass>me.noname.calculator.Calculator</project.mainClass>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
</properties>

当我用maven运行它时,效果很好。我已经设定了目标:清理javafx:run。我想在intellij中本地运行此项目,但错误显示:

Error: JavaFX runtime components are missing, and are required to run this application

我试图创建模块文件,但它显示了javafx。应用缺少应用程序。这很奇怪,因为我有依赖性。我应该怎么做才能在此代码上使用本地调试器?

共有1个答案

邹玮
2023-03-14

我通过在IntelliJ中创建一个新的JavaFX项目来解决我的问题。我仍然依赖maven。那是最快的方式。但我仍然想知道为什么它在空的maven项目中不起作用,以及有什么区别。

 类似资料:
  • 我第一次尝试使用JavaFX。我在IntelliJ中创建了一个*.fxml文件的项目。然后,我在IntelliJ中打开了内置的fxml gui编辑器。我得到一个警告,我需要为JavaFX添加一个SDK。我转到了项目结构设置、模块、依赖项,并添加了“IntelliJ dir\jre64\lib\ext\jfxrt.jar”。警告消失了。模块作用域设置为编译。如果我试图通过单击IntelliJ中类声明

  • 我有一个maven项目,我想导出到runnable中。jar文件。 在VSCode中,项目可以正常工作。导出的项目包括。jar文件和包含所有javaFX文件的libs文件夹: 运行以下命令时出现问题: 我不明白为什么会出现这个错误,因为所有JavaFX文件都位于libs文件夹中并且可见。 我目前使用SDKman的Java Temurin 18.0.1。 <代码>Pom。xml文件: 我尝试下载Ja

  • 我使用javafx和java-9在eclipse中处理java项目,但我遇到了一个错误: 错误:缺少JavaFX运行时组件,运行此应用程序需要这些组件 我已安装: java-9-openjdk。x86\u 64 java-9-openjdk-devel-9.0.4.11-4。fc27。x86\u 64 openjfx-8.0.152-12。b04。fc27。x86\u 64 openjfx-dev

  • 使用“mvn包”创建jar后,我使用以下命令从jar创建安装程序: 当尝试双击项目可执行文件(.exe由jpackage创建)时,它不会打开。从cmd运行时,我收到以下错误消息: C: \程序文件\项目\u可执行文件\u名称 奇怪的是,如果我双击jar(jpack用来创建程序映像的那个),它会启动我的应用程序。java-jar也是如此。当使用intellij和mvn javafx的“运行”按钮时,

  • 问题内容: 我正在尝试使用maven依赖项创建一个JFX11包含自定义的jar。根据我所做的研究,似乎最好的方法是通过Maven Shade插件。但是,当我运行它时,出现以下错误: 错误:缺少JavaFX运行时组件,并且是运行此应用程序所必需的 我不明白为什么会这样。我在搞什么 有一个更好的方法吗?我还尝试了使用相同消息的Maven程序集插件。 pom文件供参考 问题答案: 这个答案解释了为什么在