我想让默认 gradle这个任务依赖于自定义任务之一(做了一些工作,默认任务踢之前),但dependsOn
结构似乎并不为每任务可用的工作。例如:为什么Gradle中的某些任务不显示为属性?
apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.company.android.myapplication"
minSdkVersion 15
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
PlayStore {
}
Amazon {
}
}
}
task info << {
println "Hello, Gradle"
}
// following dependsOn works just fine
assembleDebug.dependsOn info
// following line (uncommented) will cause error
//assembleAmazonDebug.dependsOn info
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.1.1'
}
的assembleDebug
作品只是在例如罚款,但取消对assembleAmazonDebug
线,你会得到一个错误信息:
找不到财产“assembleAmazonDebug”上项目“:应用程序”。
gradlew tasks --all
产生一长串任务,其中许多任务不能与dependsOn构造一起使用。
在一些可以用作属性而有些不能用的任务之间是否存在一些关键区别?
我的答案能解决问题吗? – Opal