我正在评估新的基于 gradle 的构建系统重现我们当前基于 ant 的构建过程的能力,作为一个 gradle 初学者,我未能使用 android gradle 插件运行 checkstyle。
环境:
gradle 1.6 在标准 java 项目上运行良好(包括 checkstyle 检查目标)
最新的 android SDK(22.0.1 带有平台工具和构建工具 17)
没有日食,没有安卓工作室,只有我可爱的终端
症状:
目标项目是https://github.com/nibua-r/LigoTextDemo我成功地使用 gradle 构建了它,但是如果我天真地添加apply plugin: checkstyle
到我的build.gradle
:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.4.2'
}
}
apply plugin: 'android'
apply plugin: 'checkstyle'
android {
buildToolsVersion '17'
compileSdkVersion 15
testBuildType 'debug'
defaultConfig {
versionCode = 1
versionName = '1.0'
minSdkVersion 12
targetSdkVersion 15
}
buildTypes {
debug {
packageNameSuffix = '.debug'
}
}
}
然后gradle check
甚至不会抱怨找不到checkstyle.xml
文件(在默认config/checkstyle
位置)并返回:
:check UP-TO-DATE
BUILD SUCCESSFUL
需要什么:
首先,我只需要一个正在运行的 checkstyle 目标。然后,我需要自动运行 checkstyle 作为编译的依赖项(但首先让 chekstyle 目标启动并运行)。
假设:
这可能与以下事实有关(来自 [用户指南][1]):
Android 插件 [...] 使用自己的 sourceSets
但我没有足够的 gradle-efficient 来理解我在那里缺少的东西。请gradle大师用您宝贵的知识赐教!