Eclipse 2018-12 Eclipse Checkstyle插件8.12.0 Java jdk11.0.1
在日食项目中,我使用Google的自动值。文件是在/projectRoot/.apt_generation/tld/domain/some/package/AutoValue_AnyName.java中自动生成的。我想从checkstyle检查中排除这些文件,所以我添加了
<module name="BeforeExecutionExclusionFileFilter">
<property name="fileNamePattern" value=".*/.apt_generated/.*/AutoValue_.*"/>
</module>
在我的checkstyle.xml中。 IMO,应与自动生成的文件匹配并将其排除在扫描范围之外。 ,Eclipse的意见不尽相同。文件被扫描,并且Google不遵循我的编码风格,因此我遇到了很多“问题”。如何从Checkstyle中排除这些文件?
答案 0 :(得分:2)
您可以通过将其添加到项目的.checkstyle
文件中来排除检查:
<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
...
<filter name="DerivedFiles" enabled="true" />
</fileset-config>
这假定AutoValue / APT将生成的文件标记为派生。
或者如果您生成的类型仅限于特定的文件夹/程序包:
<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
...
<filter name="FilesFromPackage" enabled="true">
<filter-data value="derived" />
</filter>
</fileset-config>
或者您可以尝试:
<module name="SuppressionFilter">
<property name="file" value="${config_loc}/.checkstyleSuppress.xml" />
</module>
带有适当的禁止xml文件。它用途广泛,但需要首次进行一些设置。