android - 在自定义任务中执行android构建任务

标签 android gradle android-gradle-plugin build.gradle

我想删除项目 makefile 并编写一些不错的 gradle 任务。 我需要按顺序执行以下任务:

  1. 清洁
  2. 增量版本
  3. build
  4. 上传

#1、#3 和#4 是来自 android 和插件 (bintray) 的任务,而#2 是自定义任务。这是我目前所拥有的:

task releaseMajor {
    doLast {
        clean.execute()
        build.execute()
        incrementVersion.execute()
        bintrayUpload.execute()
    }
}

运行顺序不如我认为 cleanbuild 之后运行。 binrayUpload 运行时没有任何味道 (release)。我也尝试过使用 dependsOn 但没有成功(订单不工作)。

我在 Gradle 文档中找不到如何正确执行此操作。当从 CLI 以正确的顺序执行时,一切都完美无缺。

最佳答案

使用 mustRunAfterfinalizedBy 进行更精细的顺序控制:

task releaseMajor (dependsOn: ['clean', 'build', 'incrementVersion', 'bintrayUpload'])
build.mustRunAfter clean
incrementVersion.mustRunAfter build
bintrayUpload.mustRunAfter incrementVersion

关于android - 在自定义任务中执行android构建任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34638177/

相关文章:

android - 添加 RoboGuice 作为依赖项时出错

java - 错误 :Execution failed for task ':app:transformClassesWithDexForDebug'

android - Google Play服务将support-v4的版本提高到24.0.0

android - 如何启用和禁用 Android 解析推送通知

android - 如何通过 Wi-Fi 调试 Android 6.0? (netcfg 问题)

java - 导出的 APK 工作正常。但通过 USB 调试不起作用

scala - Intellij Gradle同步错误:scala导入错误

android - 防止android studio在xml文件中创建多个标签

android - Android Studio “Error while Running application”编译已过时

android - Gradle错误合并资源没有管理员权限