Java 从osgi捆绑包导出和导入相同的包
我在osgi bundleJava 从osgi捆绑包导出和导入相同的包,java,maven,osgi,Java,Maven,Osgi,我在osgi bundleBundle1中有一个类org.foo.Customer,还有另一个类 org.foo.Subscriber位于同一osgi环境中的另一个osgi bundleBundle2中。Bundle1导出包org.foo 是否可以通过Bundle1导入org.foo包Bundle2。由于在Bundle1的清单文件中的导出和导入中指定了相同的包,因此运行时是否会发生冲突 拆分包在OSGi中。如果您拥有这些包,您应该重命名一个或两个包,或者将拆分的包合并为一个包 Bundle2可以
Bundle1
中有一个类org.foo.Customer
,还有另一个类
org.foo.Subscriber
位于同一osgi环境中的另一个osgi bundleBundle2
中。Bundle1导出包org.foo
是否可以通过Bundle1
导入org.foo包Bundle2
。由于在Bundle1
的清单文件中的导出和导入中指定了相同的包,因此运行时是否会发生冲突 拆分包在OSGi中。如果您拥有这些包,您应该重命名一个或两个包,或者将拆分的包合并为一个包
Bundle2可以导入拆分包,但是Bundle2的类加载器只能看到Bundle1中的类,而不能看到Bundle2内部的类
您可以将其中一个bundle转换为另一个bundle,这会使它们使用相同的类加载器。这只需要更改片段捆绑包的清单,如果由于某种原因无法加入捆绑包或更改包名,则可以选择此选项。到片段页面的链接不再可用。有关此的任何更新,请/用指向OSGi规范中有关片段部分的链接替换死的“片段”链接。