Dav*_*son 14

如果你在谈论生成的MembersInjectorFactory类:

MyClass_MembersInjector.java
MyClass_Factory.java
Run Code Online (Sandbox Code Playgroud)

您可以防止这些从上来Ctr-N或者Cmd-O通过将其添加到被忽略的文件列表的对话框File / Settings / Editor / FileTypes,并添加适当的通配符的Ignore files and foldersEditText上:

IntelliJ中的忽略文件和文件夹对话框

*_MembersInjector.java; *_Factory.java; 将导致大多数生成的类被忽略:

之前:

在应用设置之前

后:

应用设置后

Dagger*.java如果您甚至不想查看生成的组件,甚至可以添加到列表中(即使这对项目非常有用).

更新:

如果您所说的没有在自动导入/自动完成中显示类,则可以通过以下方式完成Settings / Editor / General / Auto Import:

IntelliJ中的自动导入设置对话框

  • 对于 2020 年 Dagger 2,您将异常行更改为 _Provide.java;*_Factory.java;*_Bind*.java (4认同)
  • 对于 [Hilt](https://dagger.dev/hilt/),我使用这些例外: `*_MembersInjector.java; *_Factory.java; *_Providers.java; *_Bindings.java;*_HiltComponents_*.java` (2认同)

azi*_*ian 6

大卫·罗森(David Rawson)的答案无助于在按班级名称_Factory进行表演时不显示班级Find Usages。将显示以下内容:

这可以通过创建一个新的作用域来解决,该作用域将忽略生成的文件。

这是app模块中生成文件的正则表达式:!file[app]:build/generated//*。但是您也可以使用“递归排除”按钮来查找要摆脱的目录。

现在,将搜索范围更改为新创建的:

这将是输出:

没有_Factory课程。您也可以摆脱测试包中的类,因此只能找到生产包中的类。

  • 那太棒了。我什至会把它写成 !file:build/generated//* 这样它就会从除 app 之外的其他模块中删除生成的 (3认同)

vok*_*lam 5

在 Android Studio Dolphin 中,对话框中有一个新选项Find Usages,因此您可以忽略生成代码中的用法。

在此输入图像描述