有没有一个简单的CLI Java linter?[已关闭]

2022-08-31 10:46:03

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

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


答案 1
  • SpotBugs(早期的Findbugs)用于查找现有错误。非常好!
  • PMD,用于查找可能导致错误的模式(例如,未使用的变量)
  • 用于强制执行编码标准和约定的 Checkstyle(例如空格、Javadoc)
  • 容易出错,直接挂钩到应用程序的编译步骤中
  • clang格式支持java,并且可能已经在您的系统上可用

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


答案 2

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

来自Checkstyle,FindBugs,PMD,Clirr,fb-contrib的规则。


不确定如何确切地将其添加到提交后钩子,但 http://docs.codehaus.org/display/SONAR/Analyzing+with+Maven 可能是一个很好的起点(特别是如果你使用的是maven)。

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


推荐