0

Android アプリ内でバンドル ローダーとして Apache Felix を実行しています。そこでは Jaca SecurityManager にアクセスできないため、バンドルが java.io.* などの特定のパッケージにアクセスできないようにするソリューションを探しています。そのようなクラスが要求されたときにnullを返すか例外をスローするカスタムクラスローダーを作成するというアイデアが最善のようですが、Felixが管理するすべてのバンドルに対してグローバルクラスローダーを設定する方法が見つかりません.

4

1 に答える 1

0

このプロパティを設定してみてください:

org.osgi.framework.system.packages - フレームワーク クラス ローダーからシステム バンドルを介してエクスポートするパッケージのコンマ区切りリストを指定します。フレームワークはこれを妥当なデフォルトに設定します。値が指定されている場合、デフォルト値が置き換えられます。

デフォルトでは、すべての java.* クラスがすべてのバンドルに表示されます。これをオーバーライドすると、その動作を変更できます。含まれていないパッケージ (java.io など) をインポートしようとするバンドルは、インストール中に解決されないため、開始できません。

詳細については、http: //felix.apache.org/site/apache-felix-framework-configuration-properties.htmlを参照してください。

于 2013-03-15T20:45:35.777 に答える