Модули JavaFX не найдены при компиляции (module.FindException) - PullRequest
0 голосов
/ 18 апреля 2020

Как и у многих других людей, у меня та же проблема, что компилятор не может найти модули JavaFX. Прежде всего я использую Eclipse и добавил свое местоположение JavaFX как User Library в Eclipse ( как этот ), добавил зависимости моих проектов ( как этот ) и удостоверился, что мой %PATH_TO_FX% установлено ( вот так ).

После этого я добавил следующие аргументы в VM Arguments в Run Configurations:

--module-path "C:\Program Files\Java\javafx-sdk-13\lib"
--add-modules=javafx.base,javafx.controls,javafx.fxml,javafx.graphics,javafx.media,javafx.swing,javafx.web

, что приводит к следующему сообщение:

Error occurred during initialization of boot layer
java.lang.module.FindException: Module javafx.base not found

У меня есть файл module-info.java, похожий на этот:

module BuechereiSoftware {
    opens gui.controller to javafx.fxml;
    opens gui to javafx.graphics;

    requires transitive javafx.graphics;
    requires java.sql;
    requires javafx.base;
    requires javafx.controls;
    requires javafx.fxml;
    requires javafx.media;
    requires javafx.web;
    requires java.desktop;

    requires commons.logging;
    requires itextpdf;
    requires mysql.connector.java;
    requires org.json;
}

Полная командная строка, сгенерированная Eclipse, показана ниже.

C:\Program Files\Java\jdk-13.0.2\bin\javaw.exe
--module-path "C:\Program Files\Java\javafx-sdk-13\lib"
--add-modules=javafx.base,javafx.controls,javafx.fxml,javafx.graphics,javafx.media,javafx.swing,javafx.web
-Dfile.encoding=Cp1252
-p "D:\Bibliothek\Projekte\Git\buechereisoftware\bin;D:\Bibliothek\Projekte\Git\buechereisoftware\external\commons-logging-1.2.jar;D:\Bibliothek\Projekte\Git\buechereisoftware\external\fontbox-2.0.17.jar;D:\Bibliothek\Projekte\Git\buechereisoftware\external\itextpdf-5.5.13.1.jar;D:\Bibliothek\Projekte\Git\buechereisoftware\external\mysql-connector-java-5.1.47-bin.jar;D:\Bibliothek\Projekte\Git\buechereisoftware\external\pdfbox-2.0.17.jar;D:\Bibliothek\Projekte\Git\buechereisoftware\external\json-20190722.jar"
-m BuechereiSoftware/gui.BuechereiSoftware

1 Ответ

0 голосов
/ 28 апреля 2020

Я решил эту проблему, не используя свою пользовательскую библиотеку JavaFX в качестве системной библиотеки в Eclipse.

Вы можете найти этот параметр в Eclipse > Preferences > Java > Build Path > User Libraries, затем отредактировать свою библиотеку JavaFX и снять отметку System library (added to the boot class path). Теперь это должно выглядеть как this

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...