gpt4 book ai didi

gradle - 可选的 Gradle 属性

转载 作者:行者123 更新时间:2023-12-04 03:04:02 26 4
gpt4 key购买 nike

我有一个 Gradle 构建文件,其中一项任务是登录 docker。在此任务中,我希望用户/CI 提供参数 docker_username、docker_password 和 docker_email。

task loginDockerHub(group: "Docker",  type:Exec) {        
executable "docker"
args "login","-u", docker_username, "-p", docker_password, "-e", docker_email
}

正在执行 gradle loginDockerHub -Pdocker_username=vad1mo ...一切都按预期工作。

但是当我执行例如 gradle build我收到错误:

Could not find property 'docker_username' on task ':loginDockerHub'.



我希望在执行 gradle loginDockerHub 时出现此错误不提供 -P 参数,但不提供不访问 docker_username/password 参数的其他任务。

如何为我的 loginDockerHub 设置可选参数Gradle 中的任务,不会使任何其他任务的参数成为必需的。

最佳答案

您可以检查该属性是否存在,如果不存在则返回默认值。

args "login", "-u", project.hasProperty("docker_username") ? docker_username : ""

更新:从 Gradle 2.13 开始,您可以稍微简化一下。
args "login", "-u", project.findProperty("docker_username") ?: ""

关于gradle - 可选的 Gradle 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27659439/

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