Android 项目的静态代码分析插件。
修改 <project_dir>/build.gradle 文件:
buildscript {
repositories { jcenter() }
dependencies {
...
classpath 'com.noveogroup.android:check:1.2.5'
...
}
}
修改 <project_dir>/<module_name>/build.gradle 文件:
apply plugin: 'com.noveogroup.android.check'
推荐配置为默认配置(空)。
// 无需配置
check {
abortOnError true
checkstyle { config hard() }
findbugs { config hard() }
pmd { config hard() }
}
check { skip true }
仅跳过 Checkstyle
check { checkstyle { skip true } }
仅跳过 FindBugs
check { findbugs { skip true } }
仅跳过 PMD
check { pmd { skip true } }
// 配置可选
check {
// 是否跳过源代码检查,默认为 false
skip true/false
// 若发现代码风格违规则终止构建,默认为 false
abortOnError true/false
// Checkstyle 检查器的配置
checkstyle {
// 跳过 Checkstyle,默认为 false
skip true/false
// 若发现 Checkstyle 规则违规则终止构建,默认为 false
abortOnError true/false
// 配置文件
config project.file('path/to/checkstyle.xml')
// 配置资源
// 参见 http://gradle.org/docs/2.2/release-notes#sharing-configuration-files-across-builds
config resources.text.fromFile(someTask)
// 配置路径
config 'path/to/checkstyle.xml'
// 预定义配置:easy 和 hard
config easy()
config hard()
// 默认情况下插件会在 <rootProject>/config/checkstyle.xml 查找配置文件,
// 若未找到,则在 <project>/config/checkstyle.xml 查找,若仍没有,
// 则使用 easy() 配置。
// 报告文件目录
report new File(project.buildDir, 'reports/pmd')
// XML 报告文件
reportXML new File(project.buildDir, 'reports/checkstyle/checkstyle.xml')
// HTML 报告文件
reportHTML new File(project.buildDir, 'reports/checkstyle/checkstyle.html')
}
// FindBugs 检查器的配置
findbugs {
// 与 Checkstyle 相同的配置项
// 默认情况下插件会在 <rootProject>/config/findbugs.xml 查找配置文件,
// 若未找到,则在 <project>/config/findbugs.xml 查找,若仍没有,
// 则使用 easy() 配置。
}
// PMD 检查器的配置
pmd {
// 与 Checkstyle 相同的配置项
// 默认情况下插件会在 <rootProject>/config/pmd.xml 查找配置文件,
// 若未找到,则在 <project>/config/pmd.xml 查找,若仍没有,
// 则使用 easy() 配置。
}
}
版权所有 (c) 2017 Noveo Group
特此免费授予获得本软件及相关文档文件(以下简称“软件”)副本的任何个人,在不受限制的情况下处理本软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,以及允许被提供本软件的人员这样做,但须满足以下条件:
上述版权声明和本许可声明应包含在软件的所有副本或实质性部分中。
除本声明所包含的内容外,上述版权持有人的姓名不得用于广告宣传或推广本软件的销售、使用或其他交易,除非事先得到书面授权。
本软件按“原样”提供,不提供任何形式的明示或默示保证,包括但不限于适销性、特定用途适用性和非侵权性的保证。在任何情况下,作者或版权持有人均不对任何索赔、损害或其他责任负责,无论是因合同、侵权或其他原因引起的,与本软件或对软件的使用或其他交易有关。