【gradle代码分析插件系列1】 Checkstyle插件用法配置示例

【gradle代码分析插件系列1】 Checkstyle插件用法

内容

  • 使用
  • 任务
  • 项目布局
  • 依赖管理
  • 配置
  • 自定义HTML报告
  • 生成SARIF报告
  • 更改给Checkstyle的内存量

Checkstyle插件使用Checkstyle对项目的Java源文件执行质量检查,并从这些检查生成报告。

使用

要使用Checkstyle插件,请在构建脚本中包含以下内容:

plugins {
    id 'checkstyle'
}

该插件会为项目添加一些执行质量检查的任务。您可以通过运行gradle check来执行这些检查。

请注意,Checkstyle将使用与运行Gradle相同的Java版本运行。

任务

Checkstyle插件向项目添加了以下任务:

  • checkstyleMain — Checkstyle

    • 依赖:classes
    • 对生产Java源文件运行Checkstyle。
  • checkstyleTest — Checkstyle

    • 依赖:testClasses
    • 对测试Java源文件运行Checkstyle。
  • checkstyleSourceSet — Checkstyle

    • 依赖:sourceSetClasses
    • 对给定源集的Java源文件运行Checkstyle。

添加到其他任务的依赖项

Checkstyle插件还向由Java插件定义的任务添加了以下依赖项。

  • check
    • 依赖:所有Checkstyle任务,包括checkstyleMain和checkstyleTest。

项目布局

默认情况下,Checkstyle插件期望将配置文件放置在根项目中,但可以更改。

<root>
└── config
    └── checkstyle           
        └── checkstyle.xml   
        └── suppressions.xml
  • Checkstyle配置文件放在这里
  • 主要Checkstyle配置文件

依赖管理

Checkstyle插件添加了以下依赖项配置:

名称含义
checkstyle要使用的Checkstyle库

配置

请参阅API文档中的CheckstyleExtension类。

内置变量

Checkstyle插件定义了一个config_loc属性,可用于在Checkstyle配置文件中定义其他配置文件(如suppressions.xml)的路径。

checkstyle.xml
<module name="SuppressionFilter">
    <property name="file" value="${config_loc}/suppressions.xml"/>
</module>

自定义HTML报告

可以使用XSLT样式表自定义由Checkstyle任务生成的HTML报告,例如突出显示特定错误或更改其外观:

build.gradle
tasks.withType(Checkstyle) {
    reports {
        xml.required = false
        html.required = true
        html.stylesheet resources.text.fromFile('config/xsl/checkstyle-custom.xsl')
    }
}

生成SARIF报告

SARIF报告支持Checkstyle版本10.3.3及更高版本。默认情况下未启用

build.gradle
checkstyle {
    toolVersion = '10.3.3'
}
tasks.withType(Checkstyle) {
    reports {
        sarif.required = true
    }
}

更改给Checkstyle的内存量

Checkstyle分析是在单独的进程中执行的。默认情况下,Checkstyle进程被分配了512MB的最大堆空间。当分析许多源文件时,您可能需要为此过程提供额外的内存。您可以通过配置Checkstyle.maxHeapSize来更改Checkstyle的内存量

build.gradle
tasks.withType(Checkstyle) {
    minHeapSize = "200m"
    maxHeapSize = "1g"
}

参考链接

Gradle Checkstyle Plugin User Manual](https://docs.gradle.org/current/userguide/checkstyle_plugin.html)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BigDataMLApplication

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值