1

重複の可能性:
実行時に Eclipse で依存バンドルを見つける

更新されたバンドルからすべての依存バンドルのリストを取得するには? たとえば、一部のアプリケーションが同じバンドルをロードした場合などです。一度に 1 つのバンドルを更新します。更新されたバンドルに依存するすべてのバンドルを取得するにはどうすればよいですか? これは、更新されたバンドルに依存するすべてのバンドルを再起動して、更新されたバンドルの新しいオブジェクトを表示できるようにするために必要です。私の悪い英語を申し訳ありません。よろしく、アーサー。

4

2 に答える 2

2

FrameworkWiring.getDependencyClosureメソッドを使用します。

于 2012-08-16T21:12:39.093 に答える
0

実行時に Eclipse で依存バンドルを検索するが表示された場合:

akr は次のように書いています。

依存関係を判断する簡単な方法はありません。最善の方法は、PackageAdmin インターフェイスを使用することです。特に PackageAdmin と getImportingBundles の OSGi 仕様を参照してください: http://www.osgi.org/javadoc/r4v42/org/osgi/service/packageadmin/ExportedPackage.html#getImportingBundles()

インストールされているすべてのバンドルについて、どのバンドルが 1 つ以上のパッケージをエクスポートしているか、そのバンドルがインポートしているかを判断する必要があります。これを実現する最も簡単な方法は、PackageAdmin.getExportedPackages(Bundle bundle) を bundles = null で呼び出すことです。これは、エクスポートされたすべてのパッケージの配列を返します。次に、この配列を反復処理して、ExportPackage.getImportingBundles() を呼び出す必要があります。

于 2012-08-16T13:01:19.963 に答える