所以,Eclipse 和相对路径...
我想要实现的是与多个用户共享项目文件,其中每个用户的源的确切位置可能不同。
即,项目 MyProject 的 src 可能位于c:\version_control_foo\MyProject\src
or c:\version_control_bar\MyProject\src
甚至X:\foobar\MyProject\src
同一个项目应该适用于所有人。
这是我尝试过的:
我在 Eclipse 中设置了一个变量 C_TMP 指向c:\version_control_foo
用户 #2 会使用不同的变量设置来启动 Eclipse。然后我使用该变量创建了一个链接的源文件夹。
这在我的中创建了这个条目.project
file:
<linkedResources>
<link>
<name>C_TMP</name>
<type>2</type>
<locationURI>C_TMP</locationURI>
</link>
</linkedResources>
<variableList>
<variable>
<name>C_TMP</name>
<value>file:/C:/version_control_foo</value>
</variable>
</variableList>
变量的更改没有改变任何内容,这是有道理的,因为项目似乎复制了它的值。
基于这个问题 https://stackoverflow.com/questions/5178725/how-to-use-relative-paths-for-projects-added-to-an-eclipse-workspace我想我可以通过使所有 src 文件夹相对于工作空间位置来完成此操作,但这并不是一个很好的解决方案。
我认为 Maven 将能够通过生成 Eclipse 项目来处理这个问题(对吗?),但我想用纯 Eclipse 来处理这个问题,而不需要特殊的魔法脚本。
Edit:这就像我希望的那样,如果我使用它来添加更多库的话。为什么它不适用于我的源文件夹?
Edit2:根据评论进行一些澄清。包含源文件夹和文件的整个项目都可以在版本控制中使用。但这些文件的实际路径对于每个用户来说都是唯一的。从版本控制中签出不涉及任何类型的复制到可以为所有人定义相同的本地位置。
链接的源文件夹意味着我可以将其定义为相对于变量。然后可以为每个用户设置该变量。问题是,变量的值似乎被复制到 .project 文件中,而不是按照 Eclipse 中设置的值。