簡體   English   中英

從 osgi 包中導出和導入相同的包

[英]Exporting and importing same package from an osgi bundle

我在 osgi bundle Bundle1有一個類org.foo.Customer ,在同一個 osgi 環境中的另一個 osgi bundle Bundle2中有另一個類org.foo.Subscriber Bundle1 導出包 org.foo 。

是否可以通過Bundle1 import org.foo Bundle2Bundle1包。 Bundle1的manifest文件中export和import指定了同一個包,運行時會不會有沖突。

在 OSGi 中強烈不鼓勵拆分包。 如果您擁有這些包,您應該重命名一個或兩個包,或者將拆分的包合並為一個包。

Bundle2 可以導入拆分后的包,但是Bundle2 的類加載器只能看到Bundle1 中的類,而看不到Bundle2 內部的類。

您可以使其中一個包成為另一個包的片段,這會導致它們將使用相同的類加載器。 這只需要更改片段包的清單,如果您由於某種原因無法加入包或更改包名稱,這可能是一個選項。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM