14 java intellij-idea compiler-warnings suppress-warnings lombok
IntelliJ 错误地告诉我字段初始值设定项是多余的,但实际上 Lombok 的@Builder.Default.
我想使用抑制此警告,@SuppressWarnings但我不知道警告是什么(alt-enter 也没有给我抑制的选项)。如何在 IntelliJ 中找到警告的名称?
Syn*_*ync 10
通过将光标放在警告上并按Alt+ Enter,它应该会打开一个菜单。在这个菜单中,应该有一个删除字段的选项。导航到此选项并按?。这会打开一个子菜单,其中包含取消警告的选项。通过这样做,IntelliJ 将生成适当的注释。
在您的情况下,注释可能应该沿着@SuppressWarnings("unused")或@SuppressWarnings("UnusedAssignment")。
看起来这里还有另一个关于如何抑制未使用的方法或成员的答案@SuppressWarnings("unused"),那就是添加注释。或者,如果您想抑制局部变量,那么您必须插入行注释// noinspection unused,例如
// noinspection unused
long int i = 0;
Run Code Online (Sandbox Code Playgroud)
为了回答您的问题“如何在 Intellij 中找到警告名称?”,我找到了 James Roper 的一个网页,其中列出了所有 Intellij 警告关键字以及简短的定义。 https://jazzy.id.au/2008/10/30/list_of_suppresswarnings_arguments.html
例如,我所追求的是
冗余局部变量 = UnnecessaryLocalVariable
Roper 页面中的列表仅涵盖 JetBrains 发明的特殊警告。您需要的警告“未使用”已经存在很长时间并且早于 IntelliJ。有些是java编译器的一部分。对于 javac 警告列表,我从https://javarevisited.blogspot.com/2015/09/what-is-suppresswarnings-annotation-in-java-unchecked-raw-serial.html发现您可以运行 javac -X. 对于Java 1.8,我发现
all,auxiliaryclass,cast,classfile,deprecation,dep-ann,divzero,empty,fallthrough,finally,options,overloads,overrides,path,processing,rawtypes,serial,static,try,unchecked,varargs
Run Code Online (Sandbox Code Playgroud)
但这仍然没有引导我们unused。该unused警告来自 Eclipse,也受 Intellij 支持。有关 Eclipse 警告列表,请参阅https://help.eclipse.org/kepler/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Ftasks%2Ftask-suppress_warnings.htm
该页面包含