[英]Equinox OSGi activating two versions of the same bundle
I am looking for settung up my RCP and install all of the available applications on it. 我正在寻找安装RCP并在其上安装所有可用应用程序的地方。 However; 然而; these applications have many internal and external dependencies such as. 这些应用程序具有许多内部和外部依赖性,例如。
A -> B [1.0.0, 2.0.0) A-> B [1.0.0,2.0.0)
C -> B [2.0.0, 3.0.0) C-> B [2.0.0,3.0.0)
As a result in order to have both A and C installed on my RCP, I need both versions of B available and running. 因此,为了在我的RCP上同时安装A和C,我需要B的两个版本都可用并且正在运行。 Assuming that B is not a singleton, what is the behavior of Equinox OSGI? 假设B不是单例,Equinox OSGI的行为是什么? In some places I read that OSGI will catch the latest version and loads that bundle. 在某些地方,我读到OSGI将捕获最新版本并加载该捆绑包。 However, I am wondering if there is any way to activate B 1.0.0 for plugin A and B 2.0.0 for plugin C? 但是,我想知道是否有任何方法可以为插件A激活B 1.0.0和为插件C激活B 2.0.0?
Yes this is simply the normal behaviour of OSGi. 是的,这只是OSGi的正常行为。 The dependency version ranges are non-overlapping so you will be able to install both versions 1.x and 2.x of B. Then A will get wired to version 1 and C will get wired to 2. 依赖版本范围是不重叠的,因此您将能够安装B的版本1.x和2.x。然后,A将连接到版本1,C将连接到版本2。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.