PMD,FindBugs和Checkstyle可以一起用于Java开发项目吗?它会导致功能的广泛重叠吗?或者,使用Sonar可以获得相同的结果吗?
答案 0 :(得分:3)
是的,您可以将PMD,FindBugs和Checkstyle一起用于Java开发项目。将存在重叠,因此您必须选择相应激活的规则。您可以从默认规则集开始,然后查看由多个工具报告的结果。
使用SonarQube(以前的Sonar)也可以使用。 SonarQube使用了所有三种工具(以及更多)。使用适用于IDE的SonarQube插件,您还可以直接在代码中查看SonarQube结果。但是,根据您的配置,您可能仍会遇到一些重叠。虽然机会较小。 SonarQube最近开始为Checkstyle,PMD和FindBugs功能提供自己的探测器。那些SonarQube提供的探测器之间几乎没有重叠。此外," Sonar Way"配置默认规则集,以便没有重叠。
但是,如果您希望专业地使用静态代码分析,则必须准备好花费大量时间来配置和微调工具链。过了一段时间,重叠的问题变得不那么重要了,您将就哪种探测器实施最适合您的情况发表意见。