Contents
检查风格插件在你的项目中的java源文件上执行质量检查 - 使用Checkstyle 并从这些检查中生成报告 ..
Usage
为了使用Checkstyle plugin,添加以下内容到构建脚本中
plugins {
id 'checkstyle'
}
此插件增加了一些任务到项目中执行质量检查,你能够通过 gradle check 执行质量检查
Tasks
Checkstyle 插件增加了以下任务到项目中:
- checkstyleMain — Checkstyle
依赖: classes
针对生产 Java 源文件运行 Checkstyle
- checkstyleTest — Checkstyle
依赖: testClasses
针对测试java 源文件运行 Checkstyle
- checkstyleSourceSet —Checkstyle
依赖: sourceSetClasses
根据对给定的资源集的java源文件运行Checkstyle
Dependencies added to other tasks
此插件增加了以下依赖到由java 插件定义的任务中
- check
依赖于 所有的Checkstyle tasks, 包括 checkstyleMain 以及 checkstyleTest .
也就是说它的工作原理,是通过check 任务触发的 ..
Project layout
默认来说,Checkstyle 插件期待配置文件能够放置在根项目中,但是这个规则可以被改变 …
<root>
└── config
└── checkstyle
└── checkstyle.xml
└── suppressions.xml
- 插件配置文件放置在 checkstyle中
- 主要的Checkstyle 配置文件 -> checkstyle.xml
Dependency management
Checkstyle 插件 增加了以下的依赖配置(dependency configurations)
Name | Meaning |
---|---|
checkstyle | 使用的Checkstyle 库 |
Configuration
查看CheckstyleExtension Api 文档了解更多.
内置变量
此插件定义了一个 config_loc 属性 能够使用在Checkstyle 配置文件中定义其他配置文件(例如 suppressions.xml)的路径
<module name="SuppressionFilter">
<property name="file" value="${config_loc}/suppressions.xml" />
</module>
定制HTML 报告
HTML 报告由Checkstyle 任务生成 并且可以通过XSLT 层叠样式表进行定制,例如 高亮指定的错误或者改变它们的外貌:
tasks.withType(Checkstyle) {
reports {
xml.required = false
html.required = true
html.stylesheet resources.text.fromFile('config/xsl/checkstyle-custom.xsl')
}
}
查看一个检查风格层叠样式表示例
使用示例
首先插件中引入它
plugins { id "java-gradle-plugin" id "io.spring.javaformat" version "${javaFormatVersion}" id "checkstyle" }
在依赖配置中通过checkstyle 指定使用检查的库
depenedencies { checkstyle "io.spring.javaformat:spring-javaformat-checkstyle:${javaFormatVersion}" }
这里的版本是项目属性,通过gradle.properties 扩展的 …
定制checkstyle 插件
checkstyle { def archive = configurations.checkstyle.filter { it.name.startsWith("spring-javaformat-checkstyle")} // 配置 config = resources.text.fromArchiveEntry(archive, "io/spring/javaformat/checkstyle/checkstyle.xml") toolVersion = 8.11 }