Gradle - 无法在空对象上设置 属性
Gradle - Cannot set property on null object
我有一个 .gradle,如果条件为真,我想在其中设置一些项目属性。
def isRelease = project.getProperty('isRelease')
if (isRelease) {
println 'Detected a release'
project.properties.'releaseCenter'.'uploadURL' = project.properties.'uatUploadURL'
}
输出为:
A problem occurred evaluating root project 'tasks'.
> Cannot set property 'uploadURL' on null object
我认为它与对象名称周围的 '' 有关,但我无法让它工作。
非常感谢任何帮助。
你打电话给project.properties
:https://docs.gradle.org/current/javadoc/org/gradle/api/Project.html#getProperties--
其中 returns 个 Map
。然后你调用 properties.'releaseCenter'
相当于 properties.get("releaseCenter")
which returns null
。您尝试在 null
对象上获取 属性,这正是您看到的错误。
可能的解决方案:
- 修复您的 Gradle 配置(某些插件可能会添加此 属性)
- 自己定义属性。
我有一个 .gradle,如果条件为真,我想在其中设置一些项目属性。
def isRelease = project.getProperty('isRelease')
if (isRelease) {
println 'Detected a release'
project.properties.'releaseCenter'.'uploadURL' = project.properties.'uatUploadURL'
}
输出为:
A problem occurred evaluating root project 'tasks'.
> Cannot set property 'uploadURL' on null object
我认为它与对象名称周围的 '' 有关,但我无法让它工作。 非常感谢任何帮助。
你打电话给project.properties
:https://docs.gradle.org/current/javadoc/org/gradle/api/Project.html#getProperties--
其中 returns 个 Map
。然后你调用 properties.'releaseCenter'
相当于 properties.get("releaseCenter")
which returns null
。您尝试在 null
对象上获取 属性,这正是您看到的错误。
可能的解决方案:
- 修复您的 Gradle 配置(某些插件可能会添加此 属性)
- 自己定义属性。