2009-04-27 54 views
1

MANIFEST.MF文件包含一個條目,用於定義在運行時加載哪些* .properties文件。這些條目定義的名稱,它是用來翻譯與前綴「%」啓動插件字符串對應的屬性文件,如「%plugin.name」在MANIFEST文件中使用外部Bundle-Localization路徑

Bundle-Localization: plugin 

plugin.properties比包含像

%plugin.name=Runtime Plugin 

屬性文件也可以有名字application.properties,比我定義

Bundle-Localization: application 

當屬性文件是一個插件內子可怕ctory「屬性」我可以定義

Bundle-Localization: properties/application 

我的問題: 我可以定義成束本地化路徑是插件之外,像

Bundle-Localization: ../properties/application 

看來,該正在搜索屬性文件路徑的ManifestLocalization對象確實要求ZipFile作爲路徑。而ZipPath不支持這個功能。

我該如何解決這個問題?

回答

3

否,您無法定義插件外部的路徑。儘管除了捆綁以外,還會考慮碎片。

一般來說,bundle並不綁定到磁盤上的某個位置,因此您無法真正定義類似../properties的路徑應該解析到的位置。考慮使用 BundleContext#installBundle(String location, InputStream input)安裝的軟件包。位置參數是捆綁的標識,並且沒有與其綁定的語義。該包的內容從輸入流中讀出。那麼捆綁之外的路徑是什麼意思呢?

相關問題