在 Eclipse 中,如何拥有相对于项目的启动配置?

2022-09-04 22:38:10

我通常有多个项目副本,例如:主干的副本和最后一个发布分支的另一个副本。为了将我的项目文件与 Eclipse 完全分离,它们从 Eclipse 工作区外的目录中的 Subversion 中签出。

我想使项目易于导入Eclipse,并遵循多个答案中的说明。

问题是我的 .launch 文件具有硬编码的项目名称。导入新项目时,启动文件将显示在“运行配置”菜单中,前提是该项目与导出项目的名称完全相同。这禁止我拥有同一项目的两个版本。

看起来唯一的方法是从Ant任务生成.launch和.project文件,但我没有看到任何人使用此解决方案。也许我应该有多个工作区,并且项目始终具有相同的名称。

最好的方法是什么?

编辑:我将VonC标记为答案,但不要错过评论。


答案 1

请记住,.launch 配置文件不必位于工作区中。
正如我在你提到的答案中提到的,它们可以在你的。<project>/.settings

这意味着您不能在 eclipse 工作区中导入同一项目的两个版本。
您需要单独的工作区(本身不进行版本控制),每个工作区都引用不同路径中的项目。
每个路径代表不同的工作树(如 Subversion 的不同工作目录)。


OP补充说:

项目必须具有相同的名称,但项目签出目录可以具有任何名称

要使启动文件正常工作,您必须使用变量引用任何文件。
Java文件可以使用这样的路径来引用:''
这样,使用任何工具与subversion存储库进行交互都更容易。${workspace_loc:ProjectName}/ProjectName/src/package/MyFile.java

我想让使用Eclipse的人的生活更轻松,但我不想强迫任何人使用它。


答案 2

我的建议是将工作区绑定到签出位置,然后您可以在 Subversion 中对相关项目使用启动配置。

我的目录结构如下所示:

{checkout root}
   |
   +code
   |
   -workspace

在你的例子中,这意味着主干的工作区,以及你签出的任何其他分支/标记。我还将所有项目都保留在工作区之外。Subversion 中的工作区目录为空;我只是将项目引用从同级树递归添加到工作区。如果您导出 Eclipse 设置,它也会有所帮助,因为您可以将它们重新导入到每个新工作区中。

我从 IBM 和 Rational 的两本白皮书中推导出了这种方法,这些白皮书将 Eclipse 与 Rational ClearCase 一起使用。这应该有效,除非需要在同一工作区中打开同一项目的多个版本。


推荐