Необходим доступ к JavaFX из кода подключаемого модуля Eclipse - PullRequest
0 голосов
/ 11 сентября 2018

Я пытаюсь использовать пакет JavaFX в коде Java 8 из подключаемого модуля eclipse. Я смог скомпилировать его, но во время выполнения плагин не смог загрузить класс JavaFX. Похоже, плагин OSGi не может загружать классы из каталога «[JAVA] \ jre \ lib \ ext \», но может загружать классы из «[JAVA] \ jre \ lib \». Любые указатели, как решить проблему высоко ценится.

** Я понимаю, что есть выход из e (fx) clipse или копирование jfxrt.jar в плагин class-path решит проблему, но я хотел знать, почему плагин не может загружаться из / ext / путь JRE.

1 Ответ

0 голосов
/ 13 сентября 2018

Как указано в следующей ссылке Неразрешенные пакеты JavaFX в приложении OSGi Felix , мы сделали следующие шаги, чтобы решить эту проблему. Ниже приведены свойства конфигурации OSGi.

org.osgi.framework.bundle.parent - указывает, какой загрузчик классов используется для делегирования загрузки. Возможные значения: boot для загрузчика загрузочного класса, app для загрузчика класса приложения, ext для загрузчика класса расширения и framework для загрузчика класса фреймворка. По умолчанию загружается.

org.osgi.framework.system.packages - Указывает список пакетов, разделенных запятыми, которые должны быть экспортированы через системный пакет из загрузчика классов платформы. Фреймворк установит разумное значение по умолчанию. Если указано значение, оно заменяет любое значение по умолчанию.

Итак, добавив

-Dorg.osgi.framework.bundle.parent=ext  
-Dorg.osgi.framework.system.packages.extra=javafx.* 

аргументы виртуальной машины, добавлена ​​необходимая зависимость.

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