有一个简单的CLI Java linter吗?

时间:2013-02-04 17:20:39

标签: java lint

我一直在尝试找到能够在CLI上运行的Java linter,它与Eclipse分开,我可以将其作为git的提交钩子或我们的自动构建脚本调用。这样的事情存在吗?

理想情况下,它需要检查未使用的导入和变量,遵循样式指南,正确使用异常等等。虽然这些功能的某些子集会比我们现在拥有的更好 - 没有!

3 个答案:

答案 0 :(得分:59)

  • Findbugs用于查找现有错误。非常好!
  • PMD用于查找可能导致错误的模式(例如未使用的变量)
  • Checkstyle执行编码标准和惯例(例如空白,Javadoc)
  • Error Prone直接进入应用程序的编译步骤

所有这些工具都有一些重叠的规则。还有许多其他类似的工具,但这些工具最受欢迎和支持。

答案 1 :(得分:6)

另外,请查看Sonar,它结合了许多其他工具,并提供了一个很好的视图。

  来自Checkstyle,FindBugs,PMD,Clirr,fb-contrib。

的规则

不确定如何将其添加到post-commit挂钩,但http://docs.codehaus.org/display/SONAR/Analyzing+with+Maven可能是一个很好的起点(特别是如果你正在使用maven)。

甚至可以考虑使用http://docs.codehaus.org/display/SONAR/Continuous+Integration中列出的方法之一,因为您可能正在尝试为整个团队寻找更好的工具(“虽然这些功能的某些子集会比我们现在 - 没有!“

答案 2 :(得分:0)

这正是我正在研究的:一个CLI友好的工具,用于检查Java代码的质量。它还具有互动模式。您可以一起运行单个查询(以检查单个警告)或所有查询。

这些工具还处于早期阶段,但我几乎每天都在努力。它可以在这里找到:

https://github.com/ftomassetti/effectivejava

请让我知道您对此有何看法,并随时提出问题。