SonarLint - RedundantThrowsDeclarationCheck - 误报?

时间:2016-08-18 13:30:30

标签: java intellij-idea sonarqube sonarlint

在以下代码中,我从squid:RedundantThrowsDeclarationCheck Foo1Exception关键字后面的throws规则收到警告:Remove the redundant '!unknownSymbol!' thrown exception declaration(s).

Foo.java:

public class Foo {

    public static boolean bar(final String test) throws Foo1Exception, Foo2Exception {

        if (test.startsWith("a"))  {
            throw new Foo1Exception();
        } else if (test.startsWith("b")) {
            throw new Foo2Exception();
        } else if (test.startsWith("c")) {
            return true;
        }

        return false;
    }

}

这两个例外都在单独的文件中解除:

Foo1Exception.java:

class Foo1Exception extends Exception {}

Foo2Exception.java:

class Foo2Exception extends Exception {}

我认为这是误报,不是吗? 同样有趣的是:我不能仅在IntelliJ IDEA的SonarLint插件中直接在SonarQube(Web界面)中获取此消息。 任何想法?

我正在使用:IntelliJ IDEA 2016.2.2; SonarLint 2.3(带工作服务器绑定); SonarQube 5.6; SonarQube Java插件4.0; Java 8

1 个答案:

答案 0 :(得分:2)

这似乎在SonarLint 2.3.1修复了。