gpt4 book ai didi

android - 如何在 gradle 任务中检索库版本

转载 作者:太空狗 更新时间:2023-10-29 12:59:01 26 4
gpt4 key购买 nike

假设项目依赖声明如下:

dependencies {
implementation 'io.mylib:core:1.0.0-SNAPSHOT'
// ....
}

我想要一个 gradle 任务来检索 mylib 依赖项并检查版本。如果 lib 的版本是 SNAPSHOT,则构建失败。

像这样:

task checkLibVersion(){
version = getDependencyVersion("io.mylib:core") // <-- how to retrieve version

if(version.endsWith("-SNAPSHOT"){
throw new GradleException("Mylib uses snapshot version")
}
}

此任务将是发布管道的一部分,如果 mylib 的当前版本是快照,则该任务将失败。

有谁知道如何从 gradle 任务中检索特定依赖项的版本?

最佳答案

好的,如果将版本号提取到扩展属性中,这似乎可以很容易地完成:

在根项目的build.gradle中:

buildscript {
ext.libVersion = '1.3.21-SNAPHOT'
// ....
}

task checkLibVersion(){
def version = "$libVersion"

if (version.endsWith("-SNAPSHOT")){
throw new GradleException("Mylib uses SNAPSHOT version!")
}
}

tasks.whenTaskAdded { task ->
if (task.name == 'assembleRelease') {
task.dependsOn checkLibVersion()
}
}

关于android - 如何在 gradle 任务中检索库版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57854078/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com