का उपयोग करके मैं कुछ मॉड्यूल बना रहा हूं जिन्हें मैं ओएसजीआई पुस्तकालयों के लिए किसी भी वास्तविक निर्भरता के बिना ओएसजीआई बंडलों के रूप में उजागर करना चाहता हूं। ऐसा लगता है कि घोषणात्मक सेवाओं के विकल्प का उपयोग करना संभव है।एक एम्बेडेड ओएसजीआई कंटेनर
हालांकि, क्योंकि मैं ओएसजीआई (कम से कम बंडल बनाने वाली तरफ) के लिए नया हूं, मैं यह जांचना चाहता हूं कि यह सब काम करता है या नहीं, इस अंत में मैं एक छोटा एम्बेडेड ओएसजीआई वातावरण स्थापित करना चाहता हूं।
वर्तमान में मेरे पास एक एकल बंडल है जो एक एपीआई निर्यात करता है और एक इंटरफेस का एक स्टब कार्यान्वयन भी प्रदान करता है।
- http://felix.apache.org/site/apache-felix-framework-launching-and-embedding.html
- How to start and use Apache Felix from code?
और एम्बेडेड फेलिक्स कार्यान्वयन काम करने के लिए लगता है ठीक से लेकिन वहाँ दो समस्याएं हैं:
मैं एक वातावरण स्थापित करने के लिए निम्नलिखित ट्यूटोरियल का पालन किया है
Bundle bundle = felix.getBundleContext().installBundle("/path/to/bundle.jar")
bundle.start();
System.out.println(bundle.getRegisteredServices());
यह null
प्रिंट करता है, जबकि बंडल प्रतीत होता है ठीक है, ऐसा लगता है कि यह किसी भी सेवा का पर्दाफाश नहीं करता है।
दूसरा मैं सोच रहा हूं कि मुझे घोषणात्मक सेवाओं को थोड़ा सा चलाने और चलाने के लिए कुछ खास करना है या नहीं। मेरे Maven निर्भरता हैं:
<dependencies>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.framework</artifactId>
<version>4.2.1</version>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.scr</artifactId>
<version>1.6.2</version>
</dependency>
</dependencies>
ईमेल थ्रेड के आधार पर पाया गया: http://mail-archives.apache.org/mod_mbox/felix-users/201111.mbox/%[email protected]%3E
मैं फेलिक्स स्टार्टअप गुणों के बंडल जोड़ने की कोशिश की:
map.put(Constants.FRAMEWORK_SYSTEMPACKAGES_EXTRA, "org.apache.felix.scr; version=1.6.2");
हालांकि इस थोड़ा आशावादी लगता है पहली नजर में। मैं एम्बेडेड फ़ेलिक्स इंजन के लिए घोषणात्मक सेवाएं कैसे सक्षम करूं?
हाय @nablex। मेरे पास एक समान प्रश्न है [** यहां: ** अपाचे मैवेन असेंबली प्लगइन ओएसजीआई बंडलों के साथ काम नहीं कर रहा है] (http://stackoverflow.com/questions/34886012/apache-maven-assembly-plugin-not-working-with-osgi -बंडल्स) और उम्मीद कर रहे थे कि आप एक नज़र डालें और देखें कि क्या आप मदद कर सकते हैं। मैं वास्तव में अटक गया हूं और आप जो भी मदद कर सकते हैं उसकी सराहना करेंगे। पहले ही, आपका बहुत धन्यवाद। –