我想将 Checkstyle 规则引入 Gradle 项目,存储库中的任何文件都不能包含制表符,包括源集之外的文件(例如 README.md
)。
我尝试使用以下配置:
apply plugin: 'java'
apply plugin: 'checkstyle'
checkstyle {
checkstyleMain.source = '.'
}
但后来我得到了异常(exception):
Failed to capture snapshot of input files for task 'checkstyleMain' during up-to-date check. See stacktrace for details.
Failed to create MD5 hash for file .gradle\2.7\taskArtifacts\cache.properties.lock.
这意味着我需要排除
.gradle
目录和最有可能的其他目录,如 .git
或 .idea
,但我该怎么做?
最佳答案
这是对我有用的解决方案。它分析项目中除 .git
等目录外的所有文件。 , .idea
, gradle
, build
和其他 IntelliJ IDEA 或 Gradle 特定的自动生成文件。
apply plugin: 'java'
apply plugin: 'checkstyle'
checkstyle {
toolVersion = '6.12.1'
}
checkstyleMain {
source = fileTree('.') {
excludes = ['.*/**', 'gradle*', 'build/**', '*.iml', '*.log', '**/*.jar']
}
}
关于gradle - 在所有项目文件上使用 Gradle 运行 Checkstyle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33224187/