答案 0 :(得分:11)
Checkstyle是一种开发工具,可帮助程序员编写符合编码标准的Java代码。它使检查Java代码的过程自动化,从而使人类免于这项无聊(但重要)的任务。这使其成为希望实施编码标准的项目的理想选择。 Checkstyle具有高度可配置性,可以支持几乎任何编码标准。提供了一个支持Sun代码约定的示例配置文件。同样,其他示例配置文件也提供给其他众所周知的约定。
PMD与JDeveloper,Eclipse,JEdit,JBuilder,BlueJ,CodeGuide,NetBeans / Sun Java Studio Enterprise / Creator,IntelliJ IDEA,TextPad,Maven,Ant,Gel,JCreator和Emacs集成。
FindBugs使用静态分析来检查Java字节码是否出现错误模式。静态分析意味着FindBugs可以通过简单地检查程序的代码来找到错误:不需要执行程序。这使得FindBugs非常易于使用:通常,您应该能够在下载代码的几分钟内使用它来查找代码中的错误。 FindBugs通过分析Java字节码(编译的类文件)来工作,因此您甚至不需要程序的源代码来使用它。由于其分析有时不精确,FindBugs可以报告错误警告,这些警告不表示真正的错误。在实践中,FindBugs报告的虚假警告率低于50%。
答案 1 :(得分:5)
Checkstyle和FindBugs以及PMD。后两者不仅仅是样式工具。但是,通常需要付出一些努力,以便在团队成员之间达成协议,以及配置工具。
答案 2 :(得分:4)
我使用Checkstyle来确保代码遵循某些规则。 Checkstyle也可以plugin for Eclipse.
获得答案 3 :(得分:4)
除上述内容外,Jalopy是格式化代码的好工具。
答案 4 :(得分:4)
您可以查看Sonar。这是一个开源项目,可以轻松执行Checkstyle,PMD和Findbugs。
答案 5 :(得分:2)
有点自律有什么不对?如果你不能做一些像格式化那样微不足道的事情,我对代码的其他质量方面并不抱太大希望。
答案 6 :(得分:0)
我们在公司使用Checkstyle,但仅用于javadoc检查。
您可以配置不同的模块以包含要检查的内容以及在什么级别(如受保护,公共,私有等)中的方式很好。
提前判断,对于javadoc检查,您需要明确说明方法是否允许throw
几个例外。这是因为创作者认为让一个方法抛出一个以上的例外是不好的设计(换句话说,他们试图控制设计,而不是相关的恕我直言)。
答案 7 :(得分:0)
将编码标准文档分发给团队/部门/组织中的所有开发人员是一个良好的开端。
答案 8 :(得分:0)
eclipse编译器警告和代码格式化程序为我们完成了工作。虽然我知道checkstyle对代码的实际设计进行了更多的语义检查,而不仅仅是明智地解决它。