我在Gradle尝试定义依赖关系和顺序时遇到了问题。我的想法是执行一个依赖于assembleDevRelease & clean的任务。首先是干净的执行,然后开发我的口味。
task myTask(dependsOn: ["assembleDevRelease", "clean"])<<{ ... }我尝试了不同的方法来调用"assembleDevRelease“并添加"mustRunAfter clean”。这只在我只使用"assemble“时有效,而不是当我添加口味名称和"Release”选项时。
这个link很好地解释了如何添加依赖项,但是我没有设法获得任务assembleDevRelease。
有人能解释一下为什么我找不到这个任务吗?
谢谢
发布于 2014-01-28 17:58:20
对于那些也有这个问题的人,我只是设法通过添加以下代码来解决它:
tasks.whenTaskAdded { task ->
if (task.name.contains('assemble') ) {
task.mustRunAfter clean
}
}它可能有点脏,但它是有效的。
发布于 2015-05-16 10:11:22
矿山解决方案例如。当我想要使用在发布时递增的构建类型时:
// obtain tasks names
List<String> runTasks = gradle.startParameter.getTaskNames();
for (String item : runTasks)
// increment only version on task which contains word assemble & Release
if (item.contains('assemble') && item.contains('Release')) {
value = 1; // <- u can use here "item.mustRunAfter clean"
}https://stackoverflow.com/questions/21381108
复制相似问题