相关疑难解决方法(0)

无法解析符号“javafx.scene.web”

使用Intellij 2021.3.2,JavaFX版本:11.0.2+1。

我正在尝试将 JavaFX WebView 添加到我的应用程序中。我的导入语句无法编译:

import javafx.scene.web;  
Run Code Online (Sandbox Code Playgroud)

编译错误:

java:找不到符号符号:类Web位置:包javafx.scene

据我所知,JavaFX 版本 11 应该包含 .web 包。也许我必须安装一些特定的东西才能使用它?

javafx webview

8
推荐指数
1
解决办法
4955
查看次数

在 JavaFx 和场景生成器中包含 WebView 组件时出现错误

我正在使用 Eclipse (javafx) 和 Scene Builder 开发应用程序,我需要使用 webview。我的程序运行顺利,但是当我将 webview 组件添加到锚点窗格中时,出现此错误。

Caused by: java.lang.ClassNotFoundException: javafx.scene.web.WebView
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
at javafx.fxml/javafx.fxml.FXMLLoader.loadTypeForPackage(FXMLLoader.java:2931)
at javafx.fxml/javafx.fxml.FXMLLoader.loadType(FXMLLoader.java:2920)
at javafx.fxml/javafx.fxml.FXMLLoader.importClass(FXMLLoader.java:2861)
... 16 more
Exception running application view.Main
Run Code Online (Sandbox Code Playgroud)

我尝试使用初始化函数但仍然遇到相同的错误,有人能告诉我为什么吗?提前致谢。

javafx webview scenebuilder

4
推荐指数
1
解决办法
3304
查看次数

JavaFX 真的可以在非模块化环境中使用吗?

我尝试按照以下位置的说明使用 JavaFX:

https://openjfx.io/openjfx-docs/下的“JavaFX 和 IntelliJ”->“非模块化 Maven”

完成步骤 1 和 2(安装和验证)后,我尝试从 IntelliJ 而不是通过 Maven 插件运行一个非常简单的程序。

TraderWindow.java

public class TraderWindow extends Application {

    @SneakyThrows
    public static void main(String[] args) {
        launch(args);
    }

    @Override
    @SneakyThrows
    public void start(Stage primaryStage) {
        Scene scene = FXMLLoader.load(getClass().getResource("/TraderWindow.fxml"));
        primaryStage.setScene(scene);
        primaryStage.show();
    }
}
Run Code Online (Sandbox Code Playgroud)

交易窗口.fxml

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

<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>

<GridPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/10.0.2-internal" xmlns:fx="http://javafx.com/fxml/1">
  <columnConstraints>
    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
  </columnConstraints>
  <rowConstraints>
    <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" …
Run Code Online (Sandbox Code Playgroud)

java javafx java-platform-module-system javafx-11 java-14

3
推荐指数
1
解决办法
2058
查看次数

JavaFX安装

我是 Java 新手,目前正在阅读文本并学习。我已经在我的目录中安装了 JDK /opt(在 Kubuntu 上工作)。我还在/opt. 由于我使用了终端,每当我想编译或运行涉及 JavaFX 模块的内容时,我都会使用

javac --module-path $PATH_TO_FX --add-modules ALL-MODULE-PATH className.java

但是,当我尝试同样的事情时,jshell它不会起作用。那是,

jshell --module-path $PATH_TO_FX --add-modules ALL-MODULE-PATH

我想知道的是,有没有什么方法可以安装 JavaFX SDK,以便它与 Java SDK 目录合并,这样每当我想编译/运行需要任何模块的程序时,我就不必使用这些标志来自JavaFX?

如果没有,谁能告诉我为什么jshell上面的命令不能按我的预期工作?

java installation sdk javafx

3
推荐指数
1
解决办法
382
查看次数

JavaFX MediaPlayer 导入

我有一个问题,无法在我的 JavaFX 项目中导入 MediaPlayer。我正在使用 IntelliJ 和 Maven 构建,JDK 17 ..我更新了 Maven 依赖项,并且安装了 JavaFX 插件,但它仍然无法工作。.提前感谢您的任何答案/建议

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>1.0-SNAPSHOT</version>
    <name>demo</name>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <junit.version>5.7.1</junit.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-controls</artifactId>
            <version>17.0.0.1</version>
        </dependency>
        <dependency>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-fxml</artifactId>
            <version>17.0.0.1</version>
        </dependency>

        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-api</artifactId>
            <version>${junit.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-engine</artifactId>
            <version>${junit.version}</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>17</source>
                    <target>17</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.openjfx</groupId>
                <artifactId>javafx-maven-plugin</artifactId>
                <version>0.0.7</version>
                <executions>
                    <execution>
                        <!-- Default configuration for running with: mvn clean …
Run Code Online (Sandbox Code Playgroud)

javafx intellij-idea media-player

2
推荐指数
1
解决办法
2952
查看次数

包 javafx.embed.swing 在 Maven JDK 17 中不可见

我是 Maven 新手。我需要包括

private javafx.embed.swing.JFXPanel jFXPanel1;
Run Code Online (Sandbox Code Playgroud)

使用 Maven + Jigsaw 模块的新项目。

我的包有以下问题javafx.embed.swing

问题

我以为添加这个依赖项会起作用,但事实并非如此。

private javafx.embed.swing.JFXPanel jFXPanel1;
Run Code Online (Sandbox Code Playgroud)

在全新安装时,我看到以下内容

(包 javafx.embed.swing 在未命名模块中声明,但模块 com.my.module 不读取它)

在此输入图像描述

我不明白这一点。我看到那个JAR,它只有一个清单文件,没有任何.class文件,这让我更加困惑。

如果我查看 m2 文件夹,我会看到一个不同的 JAR,具有相同的前缀,但带有win后缀,并且在那里我看到了该包。

我认为这就是分类器

<!-- https://mvnrepository.com/artifact/org.openjfx/javafx-swing -->
<dependency>
    <groupId>org.openjfx</groupId>
    <artifactId>javafx-swing</artifactId>
    <version>19</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我想,但我不知道,这个 jar 是否被 Maven 选择,但似乎没有,因为我在 IntelliK 库中没有看到它。

在此输入图像描述

在此输入图像描述

在此输入图像描述

在此输入图像描述

我对 JavaFX 没有任何问题,一切都是模块化的并且正在运行。我只有这个罐子有问题。

- - - - - - - - - - - - - - -更新 - - - - - - - - - - ----------------

这里的罪魁祸首是 IntellijIdea,我确实单击了 …

java swing javafx maven

0
推荐指数
1
解决办法
1479
查看次数