Eclipse plugin 什么';将Eclipse插件从一个特性移动到另一个特性的好方法是什么?

Eclipse plugin 什么';将Eclipse插件从一个特性移动到另一个特性的好方法是什么?,eclipse-plugin,eclipse-rcp,Eclipse Plugin,Eclipse Rcp,假设我们有一个具有2个Eclipse特性的更新站点(每个都有自己的插件): 主要特征 可选功能(取决于主功能) 在新版本中,我想将可选功能的插件折叠到主功能中。我不想再显示可选功能了 如果我像我说的那样做,这对于新安装来说是好的,但是对于更新来说是有问题的,因为依赖于插件的确切版本的旧功能会留下来并导致冲突 我可以将可选特性保留为主要特性的一个包含特性,但是在这种情况下,仍然会有一个“optionalfeature.Feature.group”工件,它需要旧版本的特性 我现在又回到了原点,不

假设我们有一个具有2个Eclipse特性的更新站点(每个都有自己的插件):

  • 主要特征
  • 可选功能(取决于主功能)
在新版本中,我想将可选功能的插件折叠到主功能中。我不想再显示可选功能了

如果我像我说的那样做,这对于新安装来说是好的,但是对于更新来说是有问题的,因为依赖于插件的确切版本的旧功能会留下来并导致冲突

我可以将可选特性保留为主要特性的一个包含特性,但是在这种情况下,仍然会有一个“optionalfeature.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]

为什么不将可选功能更改为虚拟功能(即没有插件的功能)。另外,在虚拟功能的描述中明确说明它已被弃用。

引入一个新的更新站点并保留旧站点以保持兼容性如何?或者将当前功能重命名为legacy,只将新功能部署到当前URL?不管站点位于何处:我想摆脱用户计算机上已安装的旧功能:)当前的想法是引入虚拟功能,覆盖旧功能,但基本上是空的,安装后可以卸载。是的,这是我唯一能够实现的解决方案,但对用户来说,这似乎仍然是一件麻烦事。