Android Studio:从搜索结果中排除构建文件夹中的文件

时间:2015-03-09 08:05:59

标签: android-studio

我有一个Android Studio项目,其中我有多个模块,每个模块都取决于共享模块。让我们说这个共享模块有一个xml文件调用 sample.xml

当我搜索使用导航 - >打开文件时文件...... 并输入" sample.xml",我会得到

  1. 分享/ SRC /主/ RES /值/ sample.xml中
  2. ModuleA /建造/中间体/分解-ARR /.../ RES /值/ sample.xml中
  3. ModuleB /建造/中间体/分解-ARR /.../ RES /值/ sample.xml中
  4. ModuleC /建造/中间体/分解-ARR /.../ RES /值/ sample.xml中
  5. 为模/建造/中间体/分解-ARR /.../ RES /值/ sample.xml中 ......
  6. 由于生成了build文件夹中的文件而我们不应该编辑它们,因此我没有理由将它们包含在搜索结果中。无论如何我可以排除它们吗?

6 个答案:

答案 0 :(得分:11)

您可以创建自定义范围,它定义您要搜索的设置文件,并允许您排除那些您不想搜索的文件。

  1. CTRL + SHIFT + F 以显示查找 在路径对话框中。
  2. 范围下,选择自定义
  3. 如果下拉列表中的某个范围不会根据您的需要限制文件搜索,您可以创建自己的自定义范围。为此,请单击 ... 按钮。
  4. 然后点击 + 按钮并选择本地
  5. 在右侧窗格中,您可以包含和排除单个文件,并递归地包含或排除文件夹下的所有文件。
  6. 然后,您可以使用自定义范围来约束在在路径中查找时搜索到的文件。

答案 1 :(得分:9)

有同样的问题。 发现这些'build'文件夹在模块的.iml文件中被标记为sourceFolder。

删除所有此类条目可解决问题

<sourceFolder url="file://$MODULE_DIR$/build/..." ..../>

答案 2 :(得分:7)

此问题似乎在Android Studio的更高版本中得到修复,但是如果它再次发生或您有特殊的文件夹设置:

您需要在idea plugin

的帮助下通过gradle修改排除列表

示例:

apply plugin: 'idea'

idea.module {
    excludeDirs += file('build/')
}

然后运行任务ideaModule以使用Corwin's answer

中描述的排除行重新生成.iml文件

答案 3 :(得分:5)

  

Android Studio->外观和行为->范围-> +->添加范围   ->本地->设置自定义名称并设置模式

!file:*intermediates*/&&!file:*generated*/&&!file:R.java

enter image description here

答案 4 :(得分:1)

要从所有模块中排除所有构建文件夹,请使用以下模式:

!file:*build*/

如果您还希望排除所有库,只需使用以下模式:

!file:*build*/&&!lib:*..*

详细说明:

  1. 在“查找”窗口中,单击“ 范围”选项卡,然后单击“ 三个点”按钮

enter image description here

  1. 按钮-> 本地->输入姓名

enter image description here

  1. 添加所需的模式

Search scopes

  1. 保存并享受

答案 5 :(得分:0)

你可以使用像

这样的排除模式
!file:build//*&&

[How to add a new pattern follow and skip tests pattern]
[Skip generated files pattern]