2009-01-14 240 views
239

有没有办法在Eclipse中搜索某些文件夹(及其所有子文件夹)?从Eclipse搜索中排除文件夹

+0

Google员工:请参阅(atzz的回答:) https://stackoverflow.com/a/6111002/1599699 - 这是您正在寻找的答案,而不是接受的答案。 – Andrew 2017-06-14 17:11:37

回答

274

快速和肮脏的方式:

右键单击文件夹,进入属性,和标记文件夹的。默认情况下,派生实体不在搜索范围内。 这种方法的问题在于,如果您删除文件夹(从Eclipse内部或外部,然后刷新项目树),Eclipse会“忘记”该文件夹是由其派生的()。与Eclipse经常一样,这是一个long-standing bug(在这种情况下是10年),它仍然适用于当前版本(撰写本文时是4.6 Neon)。

的安全方式:

创建工作组,包括只有那些你想搜查,仅在该工作组搜索实体。有关此过程的详细信息,请参阅Dave Ray's answer

+2

像Dave在他的回答中指出的那样:设置事实上并不是派生出来的东西可能会导致问题。就像使用Maven创建分发时一样。 – Arjan 2010-01-12 08:40:05

+2

在Juno中,将文件夹标记为派生不会将其从搜索中排除。我正在使用Mac OS,因此可能与此相关,因为我看到许多功能在此操作系统上无法正常工作 – Marc 2013-01-25 13:16:10

+0

适用于MS-Windows XP下的Juno SR2上的我。而令我烦恼的文件夹实际上是派生出来的(构建文件夹,列表文件有时会导致无数的点击)。 – starblue 2013-04-09 08:20:01

72

我可以想象得到的标记资源可能会导致其他方面的问题。相反,创建一个工作设定要在搜索中包含的文件夹:

  • 打开搜索对话框(按Ctrl + ^h
  • 更改搜索范围,工作集
  • 单击选择。 ..
  • 单击新建创建一个新的工作组与您想要搜索的内容(或全部添加,然后删除要过滤
210
的那些

这里对我来说是什么工作(我使用的是太阳神 - ?也许这样的时候没有这个问题最初是问)

  • 转到项目 - >属性 - >资源过滤器。
  • Click Add
  • 选择滤波器类型排除所有
  • 选择适用于文件夹;检查所有的孩子(递归)
  • 在属性中,选择名称匹配,.svn(例如)。

(其实,我使用.*过滤掉.svn文件,.hg等一气呵成。)

okay'ing项目属性对话框后,这些目录不上去的再搜索一下。实际上,Eclipse非常实用,可以自动更新现有的搜索结果窗口,并移除现在被过滤掉的所有匹配项。在Eclipse朱诺

1

最好的快速和肮脏的方式:

  1. 右键单击该文件夹
  2. 转到属性。
  3. 转到C/C++构建。
  4. 选中“从构建中排除资源”。
  5. 单击确定按钮。
  6. 右键点击项目
  7. 前往索引。
  8. 单击重建。
  9. 放松!