我有2个软件包A和B,使用Apache ACE我已在以下步骤中将这些软件包配置到目标。如何区分为ACE中的目标配置的软件/软件包
- 供应的(具有1.0.0版本)发送到目标
- 置备B(具有版本1.0.0)到目标
- 置备B(具有2.0.0版本)到目标(升级//本地主机:以前的版本步骤2)
当我访问(HTTP的8080 /部署/ gatewayid /版本)
我得到以下结果
1.0.0
2.0.0
3.0.0
将如何管理代理找出哪个版本属于哪个软件?
我有2个软件包A和B,使用Apache ACE我已在以下步骤中将这些软件包配置到目标。如何区分为ACE中的目标配置的软件/软件包
当我访问(HTTP的8080 /部署/ gatewayid /版本)
我得到以下结果
1.0.0
2.0.0
3.0.0
将如何管理代理找出哪个版本属于哪个软件?
每当目标的已配置工件组发生更改时,ACE都会为目标创建新版本。要真正看到版本中的内容,目标上的管理代理需要获取版本。您随后获得的部署包中包含您需要的所有元数据(即,工件及其版本的列表)。
当在与目标捆绑软件相同的OSGi框架中运行时,可以使用BundleContext访问捆绑软件并询问它们的安装版本。喜欢的东西,
for (Bundle b : bundleContext) {
System.out.println("Found bundle " + b.getSymbolicName() + " in version " + b.getVersion());
}
如果您还需要了解这是否包已经从部署包安装的,你可以要求它为它的getLocation()
;根据部署管理规范,这将从osgi-dp:
开始。
感谢您的回复。在开发自定义管理代理时,我需要管理代理的信息。 – Vinod
啊,对,我没有明白(你能否更新这个问题来澄清?)。您想知道什么,当前安装的部署版本或捆绑版本? –
更新了问题。我想知道可用于特定目标的软件包名称和版本。 – Vinod