2015-02-17 4 views
1

Я работаю над OSGI-приложением с Felix. Теперь я хочу использовать некоторые классы JavaFx8 в пачке, но у меня есть следующее сообщение об ошибке:Как импортировать Javafx8 в комплект в OSGI

Unable to resolve 1.0: missing requirement [1.0] osgi.wiring.package; (osgi.wiring.package=javafx.geometry 

Как я могу импортировать JavaFx8 пакеты SDK в моем пачке.

Спасибо заранее,

+0

Вы хотите написать графический интерфейс JAVAFX на основе OSGi или просто хотите использовать некоторые классы утилиты, такие как те из пакета javafx.geometry, не запустив окно GUI? – Puce

+0

Мне нужно создать полный графический интерфейс, и мне понадобится большое количество импорта. – user1828433

ответ

1

Вы можете добавить библиотеку к ФЕЛИКС классам и добавьте necesary пакет (ы) с опцией org.osgi.framework.system.packages.extra. http://felix.apache.org/site/apache-felix-framework-configuration-properties.html Если вы это сделаете, комплект нет. 0 будет экспортировать требуемые пакеты. Я могу предоставить более подробные инструкции позже моего компьютера, прямо сейчас я на мобильный.

+0

опция org.osgi.framework.system.packages.extra в каком файле? Я использую maven-pax-plugin для создания проекта и запуска Felix. – user1828433

+0

Извините за задержку. У меня есть эта конфигурация в karaf 3.0.2 здесь: ~/apache-karaf-3.0.2/etc/config.properties –

0

Я работаю над OSGI-приложением с Felix. Теперь я хочу использовать классы JavaFx8 в комплекте

Мне нужно создать полный графический интерфейс, и мне понадобится важное количество импорта.

Я выпустил несколько ранних версий Access из Drombler FX, новый Rich Client Platform для JavaFX на основе OSGi (Apache Felix) и Maven.

В качестве рамок приложения он гарантирует, что JavaFX и OSGi будут запущены должным образом и обеспечит главное окно.

Вы можете прочитать больше о Drombler FX здесь: http://puces-blog.blogspot.ch/search/label/Drombler

Там есть Getting Started страница, которая объясняет, как создать, построить и запустить пример приложения Drombler FX с помощью нескольких простых шагов.

+0

Думаю, мне нужно было быть более ясным. На самом деле я работаю над OSGI-приложением, которое содержит только один пакет, который создает JavaFX JFXPanel с анимацией. все остальное - Swing и уже создано. Мне просто нужно сделать доступный пакет для пакетов javafx из JDK, например, для пакетов Swing. Я использую maven-pax-plugin, поэтому я не совсем понимаю, как это сделать. – user1828433

+0

Тогда ответ @ csikos.balint правильный. – Puce

0

После нескольких исследований, я, наконец, проблема решена, путем добавления пакетов мне нужно в pom.xml проекта:

<configuration><provision> 
     <param>--platform=felix</param> 
     <param>--noConsole</param> 
     <param>--systemPackages=javafx.animation,javafx.application,javafx.collections,javafx.embed.swing,javafx.geometry,javafx.scene,javafx.scene.layout,javafx.scene.transform,javax.swing,javax.swing.border,org.osgi.framework</param> 
     </provision></configuration> 

или путем добавления следующих свойств того же файла (POM проекта):

<properties> 
<org.osgi.framework.system.packages.extra>javafx.animation,javafx.application,javafx.collections,javafx.embed.swing,javafx.geometry,javafx.scene,javafx.scene.layout,javafx.scene.transform,javax.swing,javax.swing.border,org.osgi.framework 
</org.osgi.framework.system.packages.extra> 
<org.osgi.service.http.port>8080</org.osgi.service.http.port> 
<org.osgi.service.http.port.secure>8443</org.osgi.service.http.port.secure> 

Для More information проверить ссылку.

Смежные вопросы