【发布时间】:2015-02-23 21:39:07
【问题描述】:
我有一个 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 ... all 工作正常。
但是当我执行例如 gradle build 我得到错误:
在任务“:loginDockerHub”上找不到属性“docker_username”。
我预计在不提供 -P 参数的情况下执行 gradle loginDockerHub 时会出现此错误,但不会在不访问 docker_username/password 参数的其他任务上出现此错误。
我怎样才能在 Gradle 中为我的 loginDockerHub 任务设置可选参数,而不使该参数对任何其他任务都是必需的。
【问题讨论】:
-
请记住,任务配置总是被评估,无论单个任务是否实际执行。
标签: gradle build.gradle