2017-01-09 124 views
1

SonarLint说我应该使用if(programFolder.toFile().exists)而不是if(Files.exists(programFolder))。我一直认为鼓励使用新的nio Path而不是io File。SonarLint有关Files.notExists规则

有人能解释一下为什么SonarList鼓励在这种情况下使用文件而不是路径?

+2

我花了1分钟才发现这一点,使用谷歌:https://github.com/SonarSource/sonar-java/pull/1009/files#diff-cc16f87fc630cd3cca1b8b05093433c2 –

+0

你也可以从SonarLint访问规则的描述直接点击问题列表上的问题即可。这里是规则描述的链接https://sonarqube.com/coding_rules#rule_key=squid%3AS3725请查看链接到两个JDK错误的最后一节,以解释发生了什么。 – benzonico

回答

1

如果您单击问题列表上的问题,您可以直接从SonarLint访问该规则的说明。以下是rule的说明链接。

如果您查看描述中链接到两个JDK错误的最后一节,说明发生了什么。基本上,这个实现执行的效果很差,因为当文件不存在时,它会填充出现错误的不必要的堆栈。

+0

感谢您的回答。由于某些原因,Eclipse中的SonarLint报告窗口是空的。但该行在编辑器中突出显示,并在日食正常问题窗口中显示。所以我不能使用报告中的规则描述链接。 – user2602386