有时,您想通过使用注释直接在代码中的某个特定位置抑制警告
@SuppressWarning
(我在下面给出了此类情况的示例)。
我不知道如何找到警告的唯一代码,(类似于
java:S112
)。它没有写在 IntelliJ 的警告弹出窗口中,也没有在解决方案中建议。
更一般地说,为什么有些警告有代码而有些则没有,以及如何抑制似乎没有代码的警告?
这只是为了说明问题,但与问题完全无关。
考虑这个mockito代码:
@Mock
SomeClass toBeInjected;
@InjectMocks
Service myService;
toBeInjected
将自动注入到myService
中。这是标准的单元测试实践。
IntelliJ 和/或 Sonarqube 无法理解其中的微妙之处。他们认为因为我不访问
toBeInjected
,所以它从未使用过,因此应该删除。
我想直接在代码中使用 @SuppressWarning
注释抑制此警告。我想这样做,因为这不是与我的项目环境相关的问题,我不想到处抑制这种警告。只有在这里,在这种情况下,并且对所有其他编码员都可见。
@SuppressWarnings
注释。对于编辑器中的警告:
suppress
项目之一
@SuppressWarnings
注释。这就是 Java 代码在默认设置下的工作方式。对于其他语言,它的工作原理类似,但抑制方式不同。