2012-09-13 33 views
2

我正在評估修改一組常用Java庫的MANIFEST.MF文件的可能性,以使它們成爲有效的OSGI包(通過添加所需的頭文件)。OSGIfied jar會像普通的jar一樣工作嗎?

儘管如此,這對我的影響還不清楚......這些.jars是否可以像非OSGI環境中的非OSGI一樣無縫工作?

這些jar被部署在一系列應用服務器中,從IBM WebSphere到JBoss或Tomcat。此OSGIfication是否會觸發這些應用程序服務器對這些.jars的默認行爲的非自願更改?

是的,這些是具有外部依賴關係(在開源項目上可能沒有OSGIfied)的罐子,也可以作爲其他項目的依賴項。

回答

4

它沒有效果。 OSGi-ness僅在OSGi特定清單條目中捕獲;它們對於簡單的JVM類加載器沒有任何意義。事實上,許多開源JAR已經被OSGi編了一段時間,如果你不使用它,你不需要知道它。一個想到的是Javolution

+0

log4j-1.2.7,所有彈簧瓶...... – Robin

+1

事實上,JAR文件規範*要求*它將具有零效果......不理解清單條目的應用程序是需要忽略它。 –

+0

可以搞砸的少數事情之一是使用Bundle-ClassPath。這隻適用於OSGi。 Ergo,從不使用Bundle-ClassPath –

相關問題