我認爲我的Google技能讓我失望。我在Sonarqube中找不到一個Squid規則,它檢測到使用catch (Exception ex)
而不是捕獲特定的子類。是否有聲納規則檢測「catch異常」?如果不是,爲什麼不呢?
雖然可能有些時候這是必需的,但我認爲它一般被認爲是差的形式 Is it bad practice to catch the Exception class instead of Exception sub-classes?所以很驚訝。是否有一個原因(顯然)缺失。
我認爲我的Google技能讓我失望。我在Sonarqube中找不到一個Squid規則,它檢測到使用catch (Exception ex)
而不是捕獲特定的子類。是否有聲納規則檢測「catch異常」?如果不是,爲什麼不呢?
雖然可能有些時候這是必需的,但我認爲它一般被認爲是差的形式 Is it bad practice to catch the Exception class instead of Exception sub-classes?所以很驚訝。是否有一個原因(顯然)缺失。
我們使用:
的CheckStyle:com.puppycrawl.tools.checkstyle.checks.coding.IllegalCatchCheck
這不是魷魚,但它的工作真的很適合我們,希望能爲你工作也。
這確切一個尚未發佈,但應該是在Java插件(版本3.6) 看到規則的規範下一個版本可供選擇:https://jira.sonarsource.com/browse/RSPEC-2221和實現門票:https://jira.sonarsource.com/browse/SONARJAVA-1253
謝謝,我也發現了PMD:AvoidCatchingGenericException。我很驚訝那裏似乎沒有一個Squid替代品 - 雖然@Fabrice - SonarSource團隊可以發表評論? –
@ Disco3看到我的答案。 – benzonico