在我的Java代码中,关键的SonarLint问题S1166是否是误报?
发布时间:2020-05-24 23:46:13 所属栏目:Java 来源:互联网
导读:SonarLint 1.0.0 for Eclipse标记了我的代码中的一个关键问题,我无法理解为什么以及如何解决它.这真的对我来说是假的 – 或者我错过了什么? import org.apache.log4j.Logger;[...]public final class Foo { private static final Logger logger = Logger.get
|
SonarLint 1.0.0 for Eclipse标记了我的代码中的一个关键问题,我无法理解为什么以及如何解决它.这真的对我来说是假的 – 或者我错过了什么? import org.apache.log4j.Logger;
[...]
public final class Foo {
private static final Logger logger = Logger.getLogger(Foo.class);
[...]
public static void foo() {
MyCommand command = new MyCommand(foo,bar);
try {
commandService.executeCommand(command);
} catch (CommandException e) {
logger.error("My command execution failed",e);
}
}
[...]
以下是匹配SonarLint rule description的摘录:
在我看来,我的代码符合给定的兼容解决方案的第一个变体,但SonarLint不接受它. 不久之前有another discussion of Sonar rule S1166,但它并不是真的与我有同样的问题. 编辑:回答以下问题:我使用log4j进行日志记录.我扩展了代码以反映这一点. 解决方法实际上,您正在记录原始异常的消息和堆栈跟踪;这是一个错误的发现.可能是规则没有Log4j的特定知识,但缺乏所有日志库的全知性,异常作为参数传递的事实就足够了. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
