2017-01-09 72 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