如何在同一个项目和相同的源代码库中使用不同版本的Eclipse

时间:2013-01-03 12:42:50

标签: eclipse eclipse-cdt

我在一个适用于Windows,Linux和VxWorks的多平台软件上工作。 该软件是用C和C ++编写的,我们使用:

  • 对于Linux目标和我们的主要开发环境,我们使用 Eclipse 3.7.2 + CDT插件(Ubuntu 12.04附带的插件)。
  • 对于VxWorks目标,我们使用Wind River Workbench,这是一个Windows, Eclipse 3.7.1基于CDT的程序,由Wind River 提供,是VxWorks的制造商。
  • 对于Windows目标,我们使用Visual Studio。

我的问题是Linux Eclipse和Wind River Workbench都在项目的根目录中创建了.project和.cproject文件。由于项目目录是跨平台共享的,因此存在冲突。

我找到的唯一解决方法如下:

/.../mysoftware/others/src ---> contains the code
/.../mysoftware/others/inc ---> contains the code
/.../mysoftware/others     ---> where the Wind River Workbench ".something" files are
/.../mysoftware/linux/src  ---> symlink to ../others/src
/.../mysoftware/linux/inc  ---> symlink to ../others/inc
/.../mysoftware/linux      ---> where the Linux Eclipse ".something" files are

这个解决方案非常难看,使我的SCM(Mercurial)的Eclipse插件停止工作,只适用于Linux。

如何让多个基于Eclipse的IDE使用自己的一组“.something”文件?

2 个答案:

答案 0 :(得分:2)

我建议您不要将这些文件检入SCM,并将它们添加到Mercurial的忽略列表中。

您可以检查这些文件的模板版本(.project.linux.project.vxworks等),每个开发人员可以在从Mercurial签出项目后手动将其复制到.project。只要它们没有太大变化,这就足够了。

答案 1 :(得分:0)

我建议使用一个原始文件夹进行源代码控制操作,并为每个平台使用2个不同的文件夹。

您应该使用每个文件夹中的符号链接复制结帐文件夹结构。 然后,在每个文件夹中创建所需的CDT项目。 Eclipse项目文件将放在该文件夹而不是原始文件夹中,因此它们不会发生冲突。