我對OSGi非常陌生。OSGi類加載器問題
我開發一個插件A(OSGi包),假設甲取決於庫,假設B-1.0和C-1.0。現在如果庫C-1.0取決於庫B-2.0(注意:不同版本的庫B)。所以我的插件在其類路徑中有兩個不同版本的庫B。現在,我該如何處理這種情況?
正如我在過去4-5天研究OSGi,它爲JIRA應用程序中的每個插件創建一個類加載器,因此插件之間不會出現依賴關係版本不匹配。但是開發人員會做什麼如果插件本身需要兩個不同版本的庫jar?
我可以通過OSGi在單個osgi包中創建兩個不同的類加載器,比如一個用於包X,另一個用於包Y?
請幫助我在上述任何情況下或指向正確的方向。
在此先感謝。
感謝所有您的解決方案,並非常抱歉我的遲交回復,但您提供的解決方案假定這些全部都是OSGi捆綁包。好的,讓我重述一下我的問題,我的問題是我只有一個OSGi捆綁軟件**插件A **,其他都是簡單的庫,而不是OSGi捆綁軟件包。一個單獨的OSGi包如何使用庫** B-1.0 **作爲它的一個包說** com.example.foo **並且使用庫** B-2.0 **作爲另一個包說** com.example。酒吧**。 (這就是爲什麼我要求在一個OSGi包中創建兩個不同的類加載器。) –