在Android Gradle插件中,任务"汇编"是一个包含assembleDebug和assembleRelease的锚任务。是否有类似的锚任务包含bundleDebug和bundleRelease。我目前有以下构建脚本,其中任务依赖于bundleDebug:
android.libraryVariants.all {
variant -> variant.javaCompile.classpath += configurations.provided
}
task removeCameraApiJar(dependsOn: 'bundleDebug') << {
FileCollection outputs = tasks['bundleDebug'].getOutputs().getFiles()
outputs.each {
File file ->
println file.name
}
println 'removeCameraApiJar'
}
task assemble.dependsOn(removeCameraApiJar)
但是,如果我用&#34; bundle&#34;替换bundleDebug,脚本将失败并显示以下消息:
- 出了什么问题:无法确定任务的依赖关系:camerasupport:removeCameraApiJar&#39;。
任务与路径&#39;捆绑&#39;没有在项目中找到&#39;:camerasupport&#39;。
答案 0 :(得分:0)
似乎Android插件创建了这样一个任务。但是,您可以执行类似
的操作task removeCameraApiJar(dependsOn: tasks.matching { it.name.startsWith('bundle') })
答案 1 :(得分:0)
在当前版本的gradle android插件(1.5.0)中,可以找到bundle任务作为变量输出的属性(“packageLibrary”):
android.libraryVariants.all {
variant ->
variant.outputs.each { output ->
FileCollection outputs =
output.packageLibrary.getOutputs().getFiles()
}
}
prinln output.packageLibrary.name将产生“bundle”+ buildVariant。