Модульный JavaFX из ID (intellij) работает без модуля: Ошибка: компоненты среды выполнения JavaFX отсутствуют и требуются для запуска этого приложения

#intellij-idea #javafx #modular

#intellij-idea #javafx #модульный

Вопрос:

Кто-нибудь может объяснить мне, в чем ошибка?

В течение нескольких дней я пытался прояснить эту проблему:

 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("sample.fxml"));
        primaryStage.setTitle("Hello World");
        primaryStage.setScene(new Scene(root, 300, 275));
        primaryStage.show();
    }


    public static void main(String[] args) {
        launch(args);
    }
}
 
  1. Немодульный из IDE
  • создайте проект JavaFX
  • Присоедините библиотеку
  • в поле параметра виртуальной машины: —module-path «C:optjavafx-sdk-15.0.1lib » —добавить модули javafx.fxml, javafx.controls

= результат: Ошибка: компоненты среды выполнения JavaFX отсутствуют и требуются для запуска этого приложения

2) ** модульный из IDE **

  • создайте файл: module-info.java
     requires javafx.controls;
    requires javafx.fxml;
    
    opens sample;
 

Результат: выполнить