如果在测试类中声明私有字段:
private Foo foo;
它被使用但从未分配,当我将鼠标悬停在声明上时,IntelliJ IDEA(可能还有其他 IDE)会显示警告,并将其呈现为灰色
从不分配私有字段"foo"
但是,如果我使用 Mockito 并注释该字段,例如:
@Mock
private Foo foo;
警告消失,并将字段呈现为紫色,以指示已分配。IDE 如何知道@Mock
的含义?我浏览了 Mockito 源代码,注释定义上似乎没有任何内容,我的 IDE 也没有 Mockito 插件。
我正在编写一个类似于 Mockito 的库,带有等效的注释,我很想知道让 IDE 删除警告。
(我不是Java开发人员,所以如果我说错了什么,请纠正我)
编辑我已经在 Eclipse 中尝试过这个,它实际上删除了带有任何注释的警告,这就是@nikpon建议的。
IntelliJ IDEA中的"未使用符号"检查对此注释具有特殊配置。
在 intellij-community 代码库中快速搜索"org.mockito.Mock"会显示 JUnitEntryPoint 类,该类插入到"deadCode"扩展点。
通过此机制提供的入口点反过来又由未使用申报检查等检查查询。
请注意,检查有一个配置窗格,您可以在其中配置其他自定义注释,以防止字段被标记为未使用。
您可以从设置->检查访问此配置,然后按名称搜索"未使用的符号"检查:"未使用的符号"检查配置的屏幕截图
为方便起见,您还可以直接导航到这些设置,方法是在插入符号位于 IDEA 标记为未使用的字段上时调用 Alt-Enter:通过在未使用的字段上调用 Alt-Enter 来访问"未使用的符号"设置的屏幕截图