2

我在 Eclipse 中安装了一个功能组,我使用 installUI 来执行此操作。
这第一次工作得很好。现在,如果该功能组中的插件已更新/修改,或者如果添加了插件,那么如果我再次运行相同的 installIU 命令,则不会反映更改!然而,在 Eclipse 中使用 UI 是有效的!
知道如何通过命令行实现这一点吗?

4

1 回答 1

3

无法使用 P2 导向器进行更新。如果你想更新你的功能,你必须先卸载它,然后重新安装,但这次安装的是最新版本。

示例,安装:

eclipse -application org.eclipse.equinox.p2.director -noSplash 
-repository http://download.eclipse.org/releases/juno 
-installIUs org.eclipse.egit.feature.group,org.eclipse.jgit.feature.group,
org.eclipse.emf.sdk.feature.group,org.eclipse.mylyn_feature.feature.group 

例如,卸载:

eclipse -application org.eclipse.equinox.p2.director -nosplash 
-uninstallIU org.eclipse.egit.feature.group,org.eclipse.jgit.feature.group,
org.eclipse.emf.sdk.feature.group,org.eclipse.mylyn_feature.feature.group 

下面列出了为什么 p2 不会通过命令行更新的示例:

安装与更新:虽然在使用较低级别的 p2 核心 API 时只是一个问题,但指定要安装的 IU(作为根 IU)不会自动更新该 IU 的任何现有版本。尽管 p2 规划器会考虑替换非根 IU 以满足依赖关系,但 p2 永远不会更新根 IU。更新根 IU 需要明确卸载旧 IU 并安装新版本。请注意,p2 安装新软件/更新软件向导会检测到这种情况并将安装转换为更新。

参考:Eclipse 论坛Vogella 博客Paul Websters 博客、Eclipse 帮助Equinox/p2/FAQ

于 2013-11-15T11:19:23.020 回答