是否有一种方法可以在Eclipse中搜索时排除某些文件夹(及其所有子文件夹)?
快速而肮脏的方式:
右键单击文件夹,转到属性,并将文件夹标记为派生的。默认情况下,派生实体被排除在搜索之外。这种方法的问题是,如果删除文件夹,Eclipse会“忘记”它是派生的(从Eclipse内部或外部,然后刷新项目树)。就像Eclipse一样,这是一个长期存在的缺陷(在这种情况下为10年),仍然适用于当前版本(在撰写本文时为4.6 Neon)。
安全的方法:
创建一个工作集,其中只包括要搜索的实体,并且只在该工作集中搜索。有关此过程的详细信息,请参见戴夫·雷的回答。
我可以想象,标记派生资源可能会在其他领域引起问题。相反,用你想要包含在搜索中的文件夹创建一个工作集:
以下是对我有效的方法(我正在使用Helios -也许当这个问题最初被问到时,这种方法是不可用的?)
.svn
(实际上,我正在使用.*一次性过滤掉.svn, .hg等。)
.*
在ok项目属性对话框后,这些目录将不再出现在搜索中。事实上,Eclipse非常友好,它会自动更新现有的搜索结果窗口,并删除现在过滤掉的所有匹配项。
在Eclipse Juno中最好的快速和肮脏的方法:
Properties
Resource
Resource filters
Add filter
Name
Project Relative Path
(bin$|bin/.*|build/.*|build$)
bin
build
Regular expression
点击OK,然后应用。
这建立在@atzz的答案上,它帮助我弄清楚了这个问题。然而,虽然它确实回答了如何排除某些文件的问题,但它没有回答如何排除某些文件夹的问题。
在Eclipse中排除正在搜索的文件夹或文件
1 Right-click on the file/folder. 3 Click on the "Properties" option. 4 Select the "Resource" option. 5 Place a check next to the "Derived" attribute.
希望就是帮助。