在IntelliJ IDEA中禁止“variables从不分配”警告

我们广泛使用reflection来设置代码中的类字段值。 这些字段是通过代码访问的,但是除了通过reflection之外,它们都不会被赋值 所以IDEA显示“永不分配”的警告。 如果我要求IDEA压制检查,它插入

@SuppressWarnings({"UnusedDeclaration"}) 

但是这也禁止检查字段是否被使用,我们不想要。

无论如何,只能禁用“未分配”的检查,只留下“未使用”检查特定的领域?

IDEA版本是10.5

您可以使用注释将其标记为注入字段。 (类似于如何处理@EJB )。 IntelliJ检查(至less在版本10.5)允许您configuration您自己的注释标记字段被注入。

从菜单中select分析,检查代码,然后转到未使用的声明检查,您可以configuration注释。

  1. 运行分析:分析>观察代码…
  2. 右键单击未使用的声明(声​​明冗余树节点下方)
  3. 点击“configuration注释…”
  4. 添加com.google.google.inject.Inject和javax.inject.Inject

要在Android Studio 1.1.0中configuration注释之后,请右键单击未使用的声明 – >编辑设置 – >configuration注释。

Android Studio 1.1.0

Android Studio 1.1.0

不,似乎IDEA的检查不是那么好。 即使使用基于注解的dependency injection字段,对于使用@Inject注释的字段也可以抑制相同的警告。 自动禁止警告“未使用”。

我刚刚尝试了对该类运行FindBugs-IDEA,并没有提出任何警告或错误。

如果你popup动作提示窗口(在Mac上的ALT + Enter),它应该build议你压制Inject注解的警告

也许私人variables是未初始化我没有初始化在AndroidStudio的变种,所以告诉我的消息“”从来没有分配“”