【问题标题】:Eclipse: How to add an existing source folder?Eclipse:如何添加现有的源文件夹?
【发布时间】:2010-05-14 23:22:46
【问题描述】:

我有一个名为 c:\RemoteSrc 的目录。在此之下,我的 Eclipse 项目中有 3 个当前是源文件夹的目录(我认为?图标是一个打开的文件夹,里面有一个橙色的小网格)。我在 c:\RemoteSrc 下删除了一个新目录,我也想将它添加到我的项目中。

但是

如果我右键单击我的项目并转到“构建路径...”->“链接源”并尝试添加它,它会告诉我“文件夹已经存在,但情况不同”。是的,我知道该文件夹已经存在,这就是我尝试添加它的原因。

【问题讨论】:

  • 如果从构建路径配置中点击“添加文件夹”,那么新文件夹不会出现在树中。为什么不???
  • 如果您可以发布您的 .classpath.project 可能有助于澄清问题

标签: eclipse


【解决方案1】:

我认为您需要做的就是刷新项目。 Eclipse 不会自动拾取放入其项目目录中的文件夹(或文件)。

【讨论】:

  • 非常感谢!这么简单我都不会相信。
  • 关闭和打开项目对我也不起作用。我必须明确刷新。感谢您的回答!
  • 我认为这是一个措辞更好的错误消息可以让人们免于很多挫折的情况之一。即使在阅读了这个答案之后,我也花了 10 分钟才意识到 Eclipse 正在谈论存在的 destination 文件夹。
  • 没想到这么简单:右键项目,点击刷新。现在我最新的 git pull 中的所有新文件都显示在项目中。
  • 嗯...也许我的问题有所不同。我必须右键单击该文件夹并选择Build Path->Include
【解决方案2】:

截屏可能会有所帮助,但如果 GUI 不配合,您可以:

  • 关闭 Eclipse
  • 打开定义您的项目的.classpath 文件(它可能位于您的工作区中)
  • 看看你是否可以定义一个新的classpathentry 类型“src”:这不是简单方法,但这可能会让你知道为什么 GUI 拒绝定义相同的进入。

【讨论】:

  • 几乎成功了。我这样做并点击刷新。现在我收到一个错误“项目'xxx'的.classpath文件中的XML格式错误:格式错误'
  • 如果添加正确,.project文件中也应该有对应的条目。有时,当您链接文件夹然后将其删除时,链接仍然存在。查看您的项目,看看它是否仍然存在。
  • @evilfred:可能缺少一些引号或“>”,或者使用 windows-eol-style 保存的 unix-eol-style。
  • 嗯,好的。我把它从 .classpath 中取出,点击 Refresh,然后我就可以“添加文件夹”了。这并不完全直观。
【解决方案3】:

对于链接源,您的 .classpath 中应该有如下内容

<classpathentry kind="src" path="module_name"/>

在您的.project 中具有相应的匹配条目(在&lt;linkedResources&gt; 内)

<link>
  <name>module_name</name>
  <type>2</type>
  <location>path/to/your/module</location>
</link>

注意:删除链接项目并不一定会将其从项目中删除。

【讨论】:

  • 谢谢你说得通。我只是希望 Eclipse 有一个更直观的 GUI :)
  • 个人觉得NetBean的界面还不错。许多可用的配置更加直观(您也可以导入 Eclipse 项目)。但是,对其进行调试不如在 Eclipse 上那么友好,因此我仍然使用 Eclipse。此外,Netbeans 的“项目扫描”功能仍在进行中。
【解决方案4】:

无需关闭 Eclipse。 使用 Notepad++ 打开 .project 文件,找到指向现有源/文件夹的链接并将其删除。保存文件。 在 Eclipse 中刷新项目。 现在您应该可以再次链接它了。

【讨论】:

    【解决方案5】:

    我遇到了一个问题,我在工作目录中创建了一个 /src 目录,然后想将另一个目录与要导入的其他文件链接起来。 “现有目录”原来是因为我试图链接的目录也称为“/src”,即使路径不同。我猜 Eclipse 不能在同一个项目中有两个 /src 目录,类似于尝试在同一个节点上挂载两个文件系统。我重新排列了目录,所以只有一个 /src,一切都很好。

    【讨论】:

      【解决方案6】:

      当我尝试更新我的项目时出现冲突,导致创建了多个 .classpath 文件。所以删除副本并恢复最新的 .classpath 文件,然后刷新/重建项目,为我解决了这个问题。

      希望对你有帮助!

      【讨论】:

        【解决方案7】:

        有时简单的刷新(格雷格亚当斯基的回答)不起作用,例如因为源文件夹不在 src 目录中(在我的例子中,我不得不引用 Swagger 自动生成的代码,该代码在 Maven 构建之后位于 target/.... 目录的深处)。

        在这种情况下,右键单击项目,打开“构建路径”-->“配置构建路径”对话框,选择“源”选项卡并通过“添加文件夹”按钮选择您的附加源文件夹。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-11-30
          • 2014-10-23
          • 1970-01-01
          • 2015-01-01
          • 1970-01-01
          • 2022-10-07
          • 1970-01-01
          • 2013-07-09
          相关资源
          最近更新 更多