首页 > 解决方案 > Gradle 7.2 版本目录指定库构建类型

问题描述

我正在使用版本目录重构一个多模块项目,我必须添加一个当前如下所示的依赖项:

implementation com.mygroup:my-artifact:1.0.0:debug@aar

由于版本目录不允许指定aar类型,解决方法是直接在 gradle 文件中指定它,如下所示:

implementation(libs.myDependency) { artifact { type = 'aar' } }

这可行,但有一个额外的复杂性:我还需要指定构建类型,在上面的示例中debug,我找不到添加它的方法。

我试过的是:

TOML

[libraries]
myDependency = { module = "com.mygroup:my-artifact", version = "1.0.0:debug" }

摇篮

implementation(libs.myDependency) { artifact { type = 'aar' } }

出于某种原因,这不起作用,我怎样才能指定构建类型?

标签: gradlebuild.gradletoml

解决方案


找到了一种方法来做到这一点!需要添加classifierartifact.

所以对于给定的常规声明:

构建.gradle

dependencies {
    implementation com.mygroup:my-artifact:1.0.0:debug@aar
}

版本目录的方式是:

TOML

[libraries]
myDependency = { module = "com.mygroup:my-artifact", version = "1.0.0" }

构建.gradle

dependencies {
    implementation(libs.myDependency) { artifact { classifier = 'debug'; type = 'aar' } }
}

或(多行)

构建.gradle

dependencies {
    implementation(libs.myDependency) {
        artifact {
            classifier = 'debug'
            type = 'aar'
        }
    }

}

推荐阅读