JAVAFX 11 не поддерживает ECMAScript6 и css3 - PullRequest
0 голосов
/ 24 января 2019

Я создаю опыт просмотра веб-страниц с помощью какого-либо инструмента рисования с JAVA FX 11, но при попытке загрузить код JavaScript, в котором используются let и const, эти переменные просто игнорируются и выдают исключения. Я использую Maven 3.8.0, Java 1.8 и JavaFX 11.

Код выглядит следующим образом:

<dependency>
    <groupId>org.openjfx</groupId>
    <artifactId>javafx-controls</artifactId>
    <version>12-ea+9</version>
</dependency>
<dependency>
    <groupId>org.openjfx</groupId>
    <artifactId>javafx-web</artifactId>
    <version>12-ea+9</version>
</dependency>
<dependency>
    <groupId>org.openjfx</groupId>
    <artifactId>javafx-swing</artifactId>
    <version>12-ea+9</version>
</dependency>
<dependency>
    <groupId>org.openjfx</groupId>
    <artifactId>javafx-fxml</artifactId>
    <version>12-ea+9</version>
</dependency>

и код Java

public static void main(String[] urls) {
        String javaVersion = System.getProperty("java.version");
        String javafxVersion = System.getProperty("javafx.version");
        System.out.println(javaVersion + " java....... fx........ " + javafxVersion);
        Application.launch(urls);
    }

    @Override
    public void start(Stage stage) throws Exception {
        Parameters parameters = getParameters();
        List<String> raw = parameters.getRaw();
        String url = "http://example.com/";
        if (raw.size() != 0) {
            url = raw.get(0);
        }
        /*
         * WebConsoleListener.setDefaultListener((webView, message, lineNumber,
         * sourceId) -> { System.out.println(message + "[at " + lineNumber + "] [in " +
         * sourceId + "]"); });
         */
        Pane root = new Pane();

        WebView webView = new WebView();
        WebEngine webEngine = webView.getEngine();

        // Load the Google web page
        webEngine.load(url);
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

        Scene scene = new Scene(root);
        stage.setScene(scene);
        stage.setTitle("IWB");
        stage.show();

        // mainStage = stage;
        root.getChildren().add(webView);
        webView.setMinSize((screenSize.getWidth() - 120), (screenSize.getHeight() - 60));
        btns.setMinHeight(screenSize.getHeight() - 60);

        stage.setOnCloseRequest(e -> {
            // Platform.exit();
            // System.exit(0);
        });
        // Platform.setImplicitExit(false);
    }
...