假设我们有一个具有 2 个 Eclipse 功能的更新站点(每个都有自己的插件):
- 主要特征
- 可选功能(取决于主要功能)
在新版本中,我想把Optional Feature的插件折叠成Main Feature。我不想再展示可选功能了。
如果我按照我说的那样进行操作,那么对于新安装来说这很好,但对于更新来说,这是有问题的,因为依赖于其插件的确切版本的旧功能会留下来并导致冲突。
我可以将可选功能保留为主要功能的包含功能,但在这种情况下,仍然会有一个“可选功能.feature.group”工件需要旧版本的功能。
我现在回到第一方,必须在更新站点中将可选功能添加回作为根功能并将其显示给用户只是为了在那里获得“* .feature.group”。以后可以安全地卸载它,我可以在名称和描述中指出这一点,但整个过程有些混乱,用户可能不容易理解。安装 Eclipse Marketplace 可能会更糟。
安装隐藏(包含在主要功能中)虚拟功能时遇到的简化示例错误:
Your original request has been modified.
"Main Feature" is already installed, so an update will be performed instead.
Cannot complete the install because of a conflicting dependency.
Software being installed: Main Feature 2 (main.feature.feature.group 2)
Software currently installed: Optional Feature 1 (optional.feature.feature.group 1)
Only one of the following can be installed at once:
Optional Feature Plug-in 1 (optional 1)
Optional Feature Plug-in 2 (optional 2)
Cannot satisfy dependency:
From: Optional Feature 1 (optional.feature.feature.group 1)
To: optional [1]
Cannot satisfy dependency:
From: Main Feature 2 (main.feature.feature.group 2)
To: optional [1]