Gradle 在所有项目文件上使用渐变运行Checkstyle
我想向Gradle项目介绍Checkstyle规则,即存储库中的任何文件都不能包含制表符,包括源代码集之外的文件(例如Gradle 在所有项目文件上使用渐变运行Checkstyle,gradle,checkstyle,Gradle,Checkstyle,我想向Gradle项目介绍Checkstyle规则,即存储库中的任何文件都不能包含制表符,包括源代码集之外的文件(例如README.md) 我尝试了以下配置: apply plugin: 'java' apply plugin: 'checkstyle' checkstyle { checkstyleMain.source = '.' } 但我得到了一个例外: Failed to capture snapshot of input files for task 'checkstyle
README.md
)
我尝试了以下配置:
apply plugin: 'java'
apply plugin: 'checkstyle'
checkstyle {
checkstyleMain.source = '.'
}
但我得到了一个例外:
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']
}
}
这是对我有效的解决方案。它分析项目中的所有文件,但目录除外,如
.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']
}
}
你确定checkstyle可以针对非java文件运行吗?是的-你甚至在Checker中有
fileExtensions
属性:我会创建一个文件树,然后排除你不想包含的目录。你确定checkstyle可以针对非java文件运行吗?是的-你甚至在Checker中有fileExtensions
属性:我会创建文件树,然后排除不希望包含的目录。