代码之家  ›  专栏  ›  技术社区  ›  y.allam

格雷德尔:如何定义多种口味的共同依赖关系?

  •  2
  • y.allam  · 技术社区  · 7 年前

    我的应用程序有3种风格( free , paid , special )还有一种依赖 LIB_1 只需要 自由的 风味和其他依赖性 LIB_2 两者都需要 支付 特殊的 口味。

    所以,我的问题是如何在 build.gradle 文件?

    目前,我这样定义它们:

    dependencies {
        freeImplementation 'LIB_1'
        paidImplementation 'LIB_2'
        specialImplementation 'LIB_2'
    }
    

    有没有更好的方法来定义它们,而不是重复对不同口味的相同依赖?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Adib Faramarzi    7 年前

    是的,根据 android gradle dependency management ,这是声明特定于口味的依赖项的唯一方法。

    如果您在一个多模块项目中(并且不想在每个子模块中重复这些行),您还可以使用 subproject 根项目的build.grade中的块:

    subprojects {
        //all subprojects` config
    }
    //or
    configure(subprojects.findAll {it.name != 'sample'}) {
        // subprojects that their name is not "sample"
    }