を使用したOSGiの開発、私はランタイムとしてApache's felix
Apacheのフェリックスを選んだ、私が遭遇した問題点は以下の通りです: the screenshot is here私はのIntelliJ IDEAを使用したOSGiアプリケーションを開発するために勉強のIntelliJ IDEA
モジュールの例1をIを開発しました、2と2b、2bのパッケージ構造は2と同じですが、サービスインタフェースはモジュール2にあり、モジュール2bはサービスを代替するように設計されていますが、それはできません。 2bはself.gale.services.DictionaryService
を見つけることができませんでした。モジュール2bは、モジュール2の正確なパッケージに定義されているサービスを見つける方法を知らないのです。
モジュール2Bの活性化剤の開始方法:
public void start(BundleContext context)
{
Hashtable<String, String> props = new Hashtable<>();
props.put("Language", "French");
context.registerService(
DictionaryService.class.getName(), new DictionaryServiceImpl(), props);
}
モジュール2B インポートパッケージのマニフェストプロパティ:org.osgi.framework、自己。 gale.services
パッケージself.gale.services
はこの2bではなくモジュール2にありますが、そのパッケージが見つからないようです。
コード(スクリーンショットではありません)。 – chrylis