2009-04-27 14 views
1

MANIFEST.MFファイルには、実行時にロードされる* .propertiesファイルを定義するエントリが含まれています。これらのエントリはMANIFESTファイルの外部バンドルローカリゼーションパスを使用

のような行が含まれているよりも、

Bundle-Localization: plugin 

plugin.properties「%のplugin.name」のように、名前と接頭辞で「%」を起動プラグイン文字列を変換するために使用され、対応するプロパティファイルを定義します

%plugin.name=Runtime Plugin 

プロパティは、プロパティファイルは、プラグイン内のサブ悲惨されているとき、私は

Bundle-Localization: application 

を定義するために持っているよりも、名前のapplication.propertiesを持つことができ、ファイルctory "プロパティ" 私は

Bundle-Localization: properties/application 

私の質問を定義することができます: は、私は、それはそう

Bundle-Localization: ../properties/application 

のように、プラグインの外にあるバンドル-ローカライズパスを定義することができますがプロパティファイルのパスを検索しているManifestLocalizationオブジェクトは、ZipFileにパスを問い合わせます。 ZipPathはこの機能をサポートしていません。

どうすればこの問題を解決できますか?

答えて

3

いいえいいえプラグインの外側にあるパスを定義することはできません。バンドルに加えてフラグメントも考慮されます。

一般に、バンドルはディスク上の場所に結びついていないので、../propertiesのようなパスがどこから解決されるべきかを実際に定義することはできません。たとえば、 BundleContext#installBundle(String location, InputStream input)を使用してインストールされたバンドルを考えてみましょう。 locationパラメータはバンドルのアイデンティティであり、束縛されたセマンティクスは存在しません。バンドルの内容は入力ストリームから読み込まれます。バンドルの外側のパスはどういう意味ですか?

関連する問題