javafx - JavaFX 11 Web 视图加载异常
问题描述
我一直在努力使用包含 WebView 的 FXML 来实现 JavaFX 应用程序。
但是,当运行这会导致 ClassNotFoundException:javafx.scene.web.WebView 导致 javafx.fxml.LoadException,但我对此感到困惑。
因此,我创建了一个简化的应用程序,如下所示。在此示例中控制器为空。如果有人能告诉我如何成功实现 WebView,将不胜感激。
主.java
package sample;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
Parent root = FXMLLoader.load(getClass().getResource("wv.fxml"));
primaryStage.setTitle("WebView Test");
primaryStage.setScene(new Scene(root, 500, 500));
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
wv.fxml
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.layout.FlowPane?>
<?import javafx.scene.web.WebView?>
<FlowPane fx:controller="sample.Controller"
xmlns:fx="http://javafx.com/fxml" alignment="center" hgap="10" vgap="10">
<WebView fx:id="WV" prefWidth="200" prefHeight="200"></WebView>
</FlowPane>
模块信息.java
module WebViewTest {
requires javafx.fxml;
requires javafx.controls;
opens sample;
}
解决方案
看看你的模块信息,想知道为什么你没有 javafx.web 在那里。
推荐阅读
- apache-commons - BeanUtils filter Set 基于对象属性和值比较
- amazon-web-services - 循环遍历 S3 存储桶列表和 put-bucket-lifecycle-configuration
- javascript - Typescript 给我变量错误,并且还在编译 javascript 不知道的代码
- ios - SQLitt.Swift unregonized token 从 Swift 3.0 到 Swift 4.2 的转换错误
- reactjs - 为什么当我从 React 应用程序调用 api 时缺少“www-authenticate”标头?
- c++ - boost::filesystem::current_path() 仅在原生 Android 中返回“/”
- php - 如何将数据保存在同一行中?
- python - 如何在 QComboBox 中制作 addItem 函数以在第一个 positionfist 中添加最后一个 Item
- apache-kafka - 使用多个输入主题时,输入主题的不同消息率会影响kafka流处理速度吗?
- php - 可捕获的致命错误:无法将类 DateTime 的对象转换为第 364 行中的字符串