Checkstyle是否需要编译类?

时间:2014-06-30 15:01:33

标签: java checkstyle

任何人都可以确认Checkstyle是否要在类路径上运行类的编译版本?

我们目前仅在Java文件上运行它,但最近我们遇到了一些关于" RedundantThrows"和" JavadocMethod"检查。错误是"无法找到X"的类信息。在线搜索我们发现解决方案是在运行Checkstyle之前将已编译的类添加到类路径中。

我们的问题是我们的Checkstyle审核当前在只能访问源的服务器上运行,我们只想确认Checkstyle实际上需要访问已编译的类。似乎无法找到"明确的证据"在官方网站上。

1 个答案:

答案 0 :(得分:2)

Checkstyle对源文件非常满意。您的类的编译版本不是必需的。

但是,编译类可用仍然更好,因为一些单独的检查确实使用了编译的.class文件。这些检查提到了他们在文档中需要二进制文件的事实。一个是你提到的 JavadocMethod 检查。这个仍然可以在没有二进制文件的情况下运行,但是你可能会在日志中看到一些烦恼。

我能想到需要编译类的另一项检查是 RedundantThrows 。只有来源,这个可能不会有多大好处。你必须尝试一下。

在这两种情况下,您都可以通过将suppressLoadErrors属性设置为true来抑制加载错误。如果没有二进制文件,则检查将无法收集继承信息。因此,支票的一些功能将受到限制,但否则它将正常工作或至少不会打扰你。