Sonarqube 6.2错误 - 无法完成符号执行:达到16000步的限制

时间:2017-01-31 08:28:41

标签: java maven sonarqube

我正在使用Sonarqube 6.2和版本4.4.0.8066的声纳java插件,并在使用JDK 1.8编译的项目中出现此错误:

System.out.println(contentDispositionHeader.getFileName());

在运行声纳时我是否遗漏了一些东西:maven构建过程System.out.println(new String (contentDispositionHeader.getFileName().getBytes ("iso-8859-1"), "UTF-8");); 的声纳步骤?

请帮我摆脱这个。提前谢谢..

1 个答案:

答案 0 :(得分:0)

这与符号执行引入的否定测试有关。

对于两个规则(S2259关于nullpointer异常,S2583关于条件总是为true或false),执行此测试。

基本上,在该方法中,有一个点,其中所有可能的空值/总是真或假的总数超过6000。

您可以禁用这两个规则,或者重构该方法,使其中没有那么多if / case逻辑。

这应该是非侵入性的(https://jira.sonarsource.com/browse/SONARJAVA-1406)并且只在调试模式下渲染,但是我可以确认它仍然用maven插件暂停读取。