2009-12-02 61 views
3

我是OSGi標準的新手。我想知道更多關於捆綁軟件包文件的結構。什麼是OSGi捆綁軟件包結構?

  1. 發現有這個OSGi的INF文件夾,有關本地化和權限提到的規範,我不知道規定的使用OSGI-INF文件夾?我可以放入其他東西嗎?
  2. 在哪裏存儲捆綁引用的jar文件?
  3. 除了OSGi-INF和OSGi-OPT是否有任何由OSGi標準定義的文件夾?

非常感謝。

回答

0

的OSGi捆綁與純JAR文件沒有區別,除了JAR清單中的幾個必需條目,即META-INF/MANIFEST.MF文件(正如James已經指出的那樣)。

所有其他文件和目錄只是公約和像META-INF/springMETA-INF/maven分別使用SpringMaven例如文件夾最佳實踐。

某些OSGi服務定義了有關使用OSGI-INF目錄的類似約定。據我所知,規範中沒有列出所有這些約定的地方。你可以打開specs並搜索「OSGI-INF」以查找所有的事件:-)不要擔心沒有太多它們。

2

您可能會看看OSGi Core規範。你可以從OSGi Alliances website下載它(它實際上很可讀)。例如,對於該規範的4.2版,第3.2章詳細討論了捆綁包及其結構。正如在另一個答案中已經提到的,bundle實際上是一個帶有Manifest的簡單jar文件,其中包含一些特殊的清單頭文件。

其中一些標題還可讓您指定某些文件的位置,例如,在節3.2.1.11中束定位頭被定義:

捆定位頭 包含在束 其中本地化文件可以找到的位置。 默認值爲 OSGI-INF/l10n/bundle。翻譯是 默認因此 OSGI-INF/L10N/bundle_de.properties, OSGI-INF/L10N/bundle_nl.properties, 等

相關問題