应如何为多个产品配置Eclipse RCP目标平台?

应如何为多个产品配置Eclipse RCP目标平台?,eclipse,maven,eclipse-rcp,tycho,Eclipse,Maven,Eclipse Rcp,Tycho,在EclipseRCP(Kepler with Tycho/Nexus)项目中,我们创建了一个具有两个子部分的定制应用程序。这些零件按功能规划和生产组织。它们作为三种不同的产品交付:独立的计划、独立的生产和计划-*生产* 现在的问题是构建的目标平台应该是什么样子? 是否应在每次构建时设置TP?这意味着我们有四个TP: 构建用于创建插件的TP 计划发布TP 生产放行 计划生产发布TP 还是应该将TP视为一个存储库?这意味着整个项目只有一个依赖项,根据上下文,构建将从TP或本地源代码获得依赖项

在EclipseRCP(Kepler with Tycho/Nexus)项目中,我们创建了一个具有两个子部分的定制应用程序。这些零件按功能规划生产组织。它们作为三种不同的产品交付:独立的计划、独立的生产计划-*生产*

现在的问题是构建的目标平台应该是什么样子? 是否应在每次构建时设置TP?这意味着我们有四个TP:

  • 构建用于创建插件的TP
  • 计划发布TP
  • 生产放行
  • 计划生产发布TP
还是应该将TP视为一个存储库?这意味着整个项目只有一个依赖项,根据上下文,构建将从TP或本地源代码获得依赖项

(老实说,目前我们有第一个解决方案,我的直觉告诉我这是个坏主意。虽然我的直觉对我来说足够好,但解决方案架构师往往忽略这些输入。因此,我也在寻找一个或另一个解决方案是好是坏的理由。)

还是应该将TP视为一个存储库

这就是我们在类似情况下所做的(虽然没有使用第谷,但我认为这不应该改变事情)

对于第一种选择:

  • 基本上,我看不出有什么意义。因为您有一个组合版本,所以生产和计划依赖项无论如何都需要兼容,并且您肯定希望在开发和发布中具有相同的依赖项

  • 当其中一个依赖项被更新或删除时,您只希望在一个位置对其进行更改(尽管这可能通过使用功能解决)

  • 无需在目标平台之间切换来构建版本(尽管这可能与构建版本的方式无关)


  • 你能解释一下为什么其他解决方案可能不好吗?