gradle - gradle:避免在多个项目中执行相同的自定义任务

标签 gradle android-gradle-plugin

我有以下文件夹结构...

项目/
项目/图书馆
项目/ app1
项目/ app2

现在,我已经构建了一个自定义任务publish(将我的android apk复制到服务器文件夹中)。此任务在/app1/build.gradle /app2/build.gradle中。

除了已设置project.ext变量外,我的任务在两个应用程序中均相同。我如何将这个任务放在/build.gradle中(在根目录中),因为我不想在每个应用程序中都更改每个build.gradle。问题是/library不应该执行此任务。

有任何想法吗?

最佳答案

看看this文档部分:14.3。使用外部构建脚本配置项目

更新

结构体

  • p1
  • build.gradle-空文件
  • p2
  • build.gradle
  • build.gradle-空文件
  • settings.gradle
  • custom.gradle

    custom.gradle:

    任务你好<< {
    println“你好!”
    println project.sample_prop
    }


    settings.gradle:

    包括“p1”,“p2”

    p2 / build.gradle

    适用于:“../ custom.gradle”

    project.ext.sample_prop ='1'
  • 关于gradle - gradle:避免在多个项目中执行相同的自定义任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23535922/

    相关文章:

    gradle - groovy 编译器对 gradle 依赖语法做了什么

    intellij-idea - 为什么使用 Gradle IntelliJ IDEA 插件?

    android - 不测试时如何从 Gradle 构建中排除 AndroidTest/assets?

    android - 使用 Gradle 将 AndroidSlidingUpPanel 添加到 IntelliJ IDEA 项目

    java - 为什么我在关闭 GDX 游戏窗口后会收到错误消息?

    java - 如果找不到文件依赖项,如何使 Gradle 构建失败?

    android - gradle如何获取库

    android - 程序类型已存在 : com. android.volley.Cache$Entry

    android - 错误 :Gradle: Execution failed for task ':androidLib:compileDebugJavaWithJavac' . > 编译失败;有关详细信息,请参阅编译器错误输出

    command-line - 安装Gradle 2.5时发生异常