android – gradle multiproject包含和排除库

我正在尝试使用Gradle构建一个Android项目.

它具有以下结构:

ProjectA----- MainProject,   
LibA     ---- Library project,   
LibB     ---- Library project,   
LibC     ---- Library project,   
LibD     ---- Library project,  
etc...

基于situtation,我需要包括库,有时需要包括所有库,1库,2或3等基于flavor.
在设置文件中,我包含了所有项目.

有人知道如何根据口味包含/排除库吗?

我试过依赖阻止,我收到错误.
以下是示例代码

dependencies {
if (task.name.matches('compileFlovor1'){
  exclude module: 'LibD'
   }
}

错误是:找不到参数[{module = LibD}]的方法exclude().

请指导我解决这个问题

解决方法:

添加特定于风味的依赖项,您必须配置相应的配置.
让我们说你必须尝试“免费”和“付费”

android {
    productFlavors {
        free
        paid
    }
}

然后,您可以通过以下方式在依赖关系块中设置特定于flavor的依赖项:

dependencies {
    compile project(':library1')  //library1 used in free and paid flavour
    freeCompile project(':library2')
    paidCompile project(':library3')    
    paidCompile project(':library4')    
    paidCompile project(':library5')     
}

希望有所帮助,

干杯,
勒内

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐