我们正在使用 Sonar 分析我们的代码并在 Sonar 的自定义质量配置文件中配置 PMD、findbugs 和 checkstyle 规则。如果违反此规则的阈值,则 PMD 规则代码样式圈复杂度会在我们的代码中收集违规行为。Sonar 在项目仪表板中还有一个复杂性小部件,它根据类、方法和文件显示复杂性。这个复杂度小部件是否考虑了由 PMD 规则引擎定义的用于计算代码样式圈复杂度的相同规则,或者这个小部件是否有自己的计算复杂度的方法?Sonar 复杂性小部件是否使用 PMD 规则引擎报告的违规来确定复杂性?
提出这个问题的原因是,如果两者计算复杂度的方法不同,那么我们只想参考一种方法,并且最好保留哪种方法。