基于 RCP 的应用程序的 P2 更新失败
我尝试通过 P2 更新站点更新基于 Eclipse-RCP-3.5 的应用程序。该应用程序包含两个功能。
产品由 Eclipse Buckminster 构建。 P2 更新站点的创建是产品构建的一部分。
当通过菜单启动更新时: Update ->检查更新
会显示一个消息框:没有要更新的内容。
当我尝试菜单时:更新 ->安装新软件...
并选择相同的更新站点,报告错误:
Your original request has been modified. "Verinice Anwendung" is already installed, so an update will be performed instead. "verinice server Feature" is already installed, so an update will be performed instead. Cannot complete the install because of a conflicting dependency. Software being installed: Verinice Anwendung 1.1.1.201007130142 (sernet.gs.ui.rcp.main.feature.feature.group 1.1.1.201007130142) Software currently installed: verinice 1.1.1 (sernet.gs.ui.rcp.main.product 1.1.1) Only one of the following can be installed at once: Verinice Anwendung 1.1.1.201007130142 (sernet.gs.ui.rcp.main.feature.feature.jar 1.1.1.201007130142) Verinice Anwendung 1.1.1.201007021358 (sernet.gs.ui.rcp.main.feature.feature.jar 1.1.1.201007021358) Cannot satisfy dependency: From: Verinice Anwendung 1.1.1.201007021358 (sernet.gs.ui.rcp.main.feature.feature.group 1.1.1.201007021358) To: sernet.gs.ui.rcp.main.feature.feature.jar [1.1.1.201007021358] Cannot satisfy dependency: From: Verinice Anwendung 1.1.1.201007130142 (sernet.gs.ui.rcp.main.feature.feature.group 1.1.1.201007130142) To: sernet.gs.ui.rcp.main.feature.feature.jar [1.1.1.201007130142] Cannot satisfy dependency: From: verinice 1.1.1 (sernet.gs.ui.rcp.main.product 1.1.1) To: sernet.gs.ui.rcp.main.feature.feature.group [1.1.1.201007021358]
I trying to update an Eclipse-RCP-3.5 based application by an P2 update-site. The Application contains two features.
Product is built by Eclipse Buckminster
. Creation of the P2 update site is part of the product build.
When start the update by menu: Update -> Check for Updates
a messages box is shown: There is nothing to update.
When i try menu: Update -> Install New Software...
and select the same update-site an error is reported:
Your original request has been modified. "Verinice Anwendung" is already installed, so an update will be performed instead. "verinice server Feature" is already installed, so an update will be performed instead. Cannot complete the install because of a conflicting dependency. Software being installed: Verinice Anwendung 1.1.1.201007130142 (sernet.gs.ui.rcp.main.feature.feature.group 1.1.1.201007130142) Software currently installed: verinice 1.1.1 (sernet.gs.ui.rcp.main.product 1.1.1) Only one of the following can be installed at once: Verinice Anwendung 1.1.1.201007130142 (sernet.gs.ui.rcp.main.feature.feature.jar 1.1.1.201007130142) Verinice Anwendung 1.1.1.201007021358 (sernet.gs.ui.rcp.main.feature.feature.jar 1.1.1.201007021358) Cannot satisfy dependency: From: Verinice Anwendung 1.1.1.201007021358 (sernet.gs.ui.rcp.main.feature.feature.group 1.1.1.201007021358) To: sernet.gs.ui.rcp.main.feature.feature.jar [1.1.1.201007021358] Cannot satisfy dependency: From: Verinice Anwendung 1.1.1.201007130142 (sernet.gs.ui.rcp.main.feature.feature.group 1.1.1.201007130142) To: sernet.gs.ui.rcp.main.feature.feature.jar [1.1.1.201007130142] Cannot satisfy dependency: From: verinice 1.1.1 (sernet.gs.ui.rcp.main.product 1.1.1) To: sernet.gs.ui.rcp.main.feature.feature.group [1.1.1.201007021358]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要构建产品的新版本。
p2 区分“已安装”的内容和“已安装的内容所需的内容”。您的产品
sernet.gs.ui.rcp.main.product
是已安装的内容。其他一切都是如此。 “检查更新”正在寻找sernet.gs.ui.rcp.main.product
的新版本。通过安装该功能,您可以将其添加到已安装的事物列表中(而不仅仅是已安装的事物所需的)。但是,您仍然拥有原始产品,该产品对该功能的特定版本有要求。该要求与新版本的功能冲突。
这个出现了很少 次在 Eclipse 论坛上。您可能对此博客文章感兴趣回复中写道。
You need to build a new version of the product.
p2 distinguishes between what is "installed" and what is "required by the things that are installed". Your product
sernet.gs.ui.rcp.main.product
is the thing that is installed. Everything else is required by that. "Check for Updates" is looking for a new version ofsernet.gs.ui.rcp.main.product
.By installing the feature, you are adding it to the list of things that are installed (instead of just required by the things installed). However, you still have the original product which has a requirement on a specific version of that feature. That requirement conflicts with the new version of the feature.
This came up a few times on the eclipse forums. You might be interested in this blog post I wrote in response.