Я пытаюсь использовать Pandomium (CEF) с JavaFX в Java 11 (Netbeans) с Maven, но хотя я правильно установил все зависимости, узел Swing не показывает мне веб-браузер. По какой-то причине Pandomium работает над Java Swing, но, к сожалению, я не могу установить размер своего веб-браузера. Это мои зависимости Maven:
<dependencies>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>13</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-fxml</artifactId>
<version>13</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-swing</artifactId>
<version>13</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-base</artifactId>
<version>13</version>
</dependency>
<dependency>
<groupId>org.panda-lang</groupId>
<artifactId>pandomium</artifactId>
<version>67.0.6</version>
</dependency>
<dependency>
<groupId>org.panda-lang</groupId>
<artifactId>panda</artifactId>
<version>indev-0.8.87</version>
</dependency>
<!-- Windows x64 -->
<dependency>
<groupId>org.panda-lang.pandomium-natives</groupId>
<artifactId>pandomium-natives-win64</artifactId>
<version>67.0</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>panda-repository</id>
<url>https://repo.panda-lang.org/</url>
</repository>
</repositories>
Это мой код JavaFX:
@FXML
private SwingNode swingNode;
@Override
public void initialize(URL arg0, ResourceBundle arg1) {
CefSettings settings = new CefSettings();
settings.windowless_rendering_enabled = OS.isLinux();
CefApp cefApp = CefApp.getInstance(settings);
CefClient cefClient = cefApp.createClient();
CefBrowser cefBrowser = cefClient.createBrowser("http://www.google.com", OS.isLinux(), false);
Component browserUI = cefBrowser.getUIComponent();
JPanel panel = new JPanel();
panel.add(browserUI);
swingNode.setContent(panel);
}
Это моя информация о модуле (моя информация о модулях показывает мне ошибку: module de.aria.mavenproject3 reads package org.panda_lang.panda.framework.design.architecture.module from both panda.framework.indev and panda.indev
Но компилятор все еще может запускать мой код):
module de.aria.mavenproject3 {
requires javafx.controls;
requires javafx.fxml;
requires javafx.swing;
requires javafx.base;
requires pandomium;
requires pandomium.natives.win64;
opens de.aria.mavenproject3 to javafx.fxml;
exports de.aria.mavenproject3;
}
В моем XML я создал только Swing Node (fx-id: swingNode) с помощью VBox.