所以,Eclipse 和相对路径...
我想要实现的是与多个用户共享项目文件,其中每个用户的源代码的确切位置可能不同。
即,项目 MyProject 的 src 可能位于 c:\version_control_foo\MyProject\src
或 c:\version_control_bar\MyProject\src
甚至 X :\foobar\MyProject\src
并且同一个项目应该适用于所有人。
这是我尝试过的:
我在 Eclipse 中设置了一个指向 c:\version_control_foo
的变量 C_TMP,其想法是用户 #2 将使用该变量的不同设置启动 Eclipse。然后我使用变量创建了一个链接的源文件夹。
这在我的 .project
文件中创建了这个条目:
<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>
变量的改变并没有改变任何东西,这是有道理的,因为项目似乎复制了它的值。
基于 this question我想我可以通过让所有 src 文件夹相对于工作区位置来实现,但这并不是一个好的解决方案。
我认为 Maven 可以通过生成 Eclipse 项目来处理这个问题(对吧?),但我想用纯 Eclipse 来处理这个问题,而不需要特殊的魔术脚本。
编辑:如果我使用它来添加更多库,它的工作方式就像我希望的那样。为什么它不适用于我的源文件夹?
Edit2:一些基于评论的澄清。带有源文件夹和文件的整个项目在版本控制中可用。但是这些文件的实际路径对于每个用户来说都是唯一的。从版本控制中 check out 不涉及任何类型的复制到可以为所有人定义相同的本地位置。
链接源文件夹意味着我可以将其定义为相对于变量。然后可以为每个用户设置此变量。问题是,变量的值似乎被复制到 .project 文件,而不是 Eclipse 中设置的值。
最佳答案
好的,我想我找到了我需要的东西。在 Eclipse 中,我可以设置一个链接资源,我可以在定义链接源文件夹时使用它。此变量可以更改,源文件夹随后将相应更改。如果我能以某种方式在启动时设置链接资源,那么我就完成了。
转到 Window > Preferences
,然后转到 General > Workspace > Linked Resources
并在此处定义您的文件夹。然后你就可以在项目中使用定义的变量了。
关于java - Eclipse 中源代码的相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8327707/