【问题标题】:How to generate multi aar with multi library module in one task?如何在一项任务中使用多库模块生成多 aar?
【发布时间】:2020-11-04 11:07:17
【问题描述】:

有一个基于gradle的android项目,其中有一个应用程序模块和两个库模块。

MyApplication
├── app
├── libA
└── libB

app moudle 实现 libA,libA 实现 libB build.gradle 文件就是这样。 应用

apply plugin: 'com.android.application'

android {
    flavorDimensions "test"
    productFlavors {
                      flavor1{}
                      flavor2{}
                   }
   dependencies {
                    implementation project(':libA')
                }
}

libA

apply plugin: 'com.android.library'

android {
    flavorDimensions "test"
    productFlavors {
                      flavor1{}
                      flavor2{}
                   }
   dependencies {
                    implementation project(':libB')
                }
}

libB

apply plugin: 'com.android.library'
android {
}

当我运行项目的 gradle 任务 assembleFlavor1Release 时,我得到的输出是这样的,

MyApplication
├── app
│   └── output
│       └── app-flavor1-release.apk
├── libA
│   └── output
│       └── libA-flavor1-release.aar
└── libB
    └── output

输出目录下没有libB的输出aar。 出于某种原因,我无法在 libB 中添加风味。 有什么方法可以同时为 libA 和 libB 生成两个 aar?

【问题讨论】:

  • 你能发布完整的“libB”构建配置吗?
  • libB 是一个没有味道的简单模块。我在github.com/olbb/Que62906594 的github 上上传了问题的演示。如果你愿意,你可以在那里得到它。

标签: android gradle aar


【解决方案1】:

也许你可以改变:

implementation project(':libA')
implementation project(':libB')

进入

api  project(':libA')
api  project(':libB')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-18
    • 2017-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-02
    相关资源
    最近更新 更多