gpt4 book ai didi

gradle - Gradle适用于无法访问父级属性

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

我有构建等级文件,我在其中外部化了一些与docker相关的操作。

我的build.gradle文件定义了一个Docker镜像名称。

build.gradle:

def docker = [
imageName: "myOrg/$rootProject.name:$version",
]

apply from: 'build-config/docker.gradle'

应用的脚本包含访问 docker.imageName 变量的任务。

docker.gradle
...
task buildImage(group: "Docker", dependsOn: createDockerfile, type:Exec) {
executable "docker"
args 'build','-t',docker.imageName,'build'
}

现在我得到错误 Could not find property 'docker' on task ':buildImage'.

如何在已应用的frome gradle脚本中使用build.gradle中定义的变量。

最佳答案

defext.变量的声明中,用docker替换build.gradle,如下所示:

ext.docker = [
imageName: "myOrg/$rootProject.name:$version",
]

apply from: 'build-config/docker.gradle'

基本上, ext命名空间用于定义项目级别的自定义属性,然后所应用的脚本 docker.gradle可以访问该属性,该属性也属于项目范围。

仅使用 def,属性可见性仅限于脚本文件。

关于gradle - Gradle适用于无法访问父级属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27779219/

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