2015-04-13 2 views
0

Я хочу сделать следующее решение: Apache Felix + Weld 2.2.10.SP1 для Java SE. Для этого я хочу запустить один из примеров из архива сварки - сварку-osgi-paint.Выполнение сварки osgi пример с felix на java se

Я использую Феликс 4.6.1, java8 и у меня есть следующие пакеты, которые я установить и запустить:

cdi-api.jar 
javax.annotation-api-1.2.jar 
javax.el-api-2.2.4.jar 
javax.interceptor-api-1.2.jar 
log4j-1.2.17.jar 
ops4j-base-lang-1.5.0.jar 
org.apache.felix.scr-1.8.2.jar 
org.apache.servicemix.bundles.javax-inject-1_2.jar 
org.osgi.compendium-4.3.1.jar 
pax-cdi-api-0.8.0.jar 
pax-cdi-extender-0.8.0.jar 
pax-cdi-extension-0.8.0.jar 
pax-cdi-spi-0.8.0.jar 
pax-swissbox-core-1.8.0.jar 
pax-swissbox-lifecycle-1.8.0.jar 
pax-swissbox-tracker-1.8.0.jar 
slf4j-api-1.7.6.jar 
slf4j-log4j12-1.7.2.jar 
weld-osgi-paint-api.jar 
weld-osgi-paint-core.jar 
weld-osgi-paint-square.jar 
weld-osgi-paint-triangle.jar 
weld-se-core.jar 
weld-se.jar 
xbean-bundleutils-3.18.jar 

Кроме того, у меня есть следующие дополнительные пакеты

String SYSTEM_PACKAGES = 
     "org.osgi.framework;version=\"1.8\"," + 
     "org.osgi.service.packageadmin;version=\"1.8\","+ 
     "org.osgi.framework.wiring;version=\"1.8\","+ 
     "javax.swing,javax.management,javax.naming,javax.xml.parsers,"+ 
     "org.w3c.dom,org.xml.sax,org.xml.sax.helpers"; 
configMap.put(Constants.FRAMEWORK_SYSTEMPACKAGES, SYSTEM_PACKAGES); 

Я запустить программу и это то, что я получаю

org.osgi.framework.BundleException: Фрагмент расслоения не может быть начал. at org.apache.felix.framework.Felix.startBundle (Felix.java:1981) at org.apache.felix.framework.BundleImpl.start (BundleImpl.java:977) at org.apache.felix.framework. BundleImpl.start (BundleImpl.java:964)

И ничего более. Что я делаю неправильно?

ответ

1

Один из пучков, которые вы пытаетесь запустить, - это фрагмент. Пакеты фрагментов могут не запускаться. Их можно решить только.