在buildscript块中访问Gradle全局属性

4

我的主要Gradle脚本:

buildscript {scriptHandler->
    apply from: "......./repositories.gradle", to: scriptHandler
}

加载repositories.gradle脚本:

repositories{
    maven {
        url = "myURL"
        credentials {
            username repositoryReadUsername
            password repositoryReadPassword
        }
    }
}

在 gradle.properties 文件中定义了 repositoryReadUsername 和 repositoryReadPassword 的值。

我遇到了错误:

评估脚本时出现问题。

无法获取类型为 org.gradle.api.internal.artifacts.repositories.DefaultPasswordCredentials_Decorated 的凭据的 'repositoryReadUsername' 属性。

1个回答

1
似乎无法在应用的buildscript中使用这些属性。这里基本上是相同的问题,答案是:
脚本插件目前不受其所应用的构建脚本的buildscript部分的影响。(实际上,尽管当前是这种方式,但子项目构建脚本是否应受父构建脚本的buildscript部分的影响还有问题。)您可以将buildscript部分的可重用部分移动到自己的脚本插件中。
因此,看起来您必须在脚本插件之外声明存储库,或者提供凭据而不从属性文件中获取它们。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接