Gradle:无法为项目获取未知属性'appName'

时间:2017-12-14 19:08:46

标签: gradle

我有以下build.gradle片段。

第一行工作正常,如果我没有指定版本,则使用1.0.0-SNAPSHOT。 但是第二行不起作用。我得到“无法为项目获取未知属性'appName'” 知道我如何在gradle中定义自定义属性并通过命令行传递它们吗?

version = "${version != 'unspecified' ? version : '1.0.0-SNAPSHOT'}"

appName = "${appName != 'unspecified' ? appName : 'test'}"

1 个答案:

答案 0 :(得分:0)

您可以在Gradle DSL doc中找到所有Porject API的属性,这是导致“未知属性”问题的根本原因。

正如您所看到的,versionProject API属性的一部分,而appName则不是。您也可以使用name(引用rootProject.name中的setting.gradle)。

这是我的settings.gradle

rootProject.name = 'test-project'

以下是我在build.gradle中添加的代码段:

ext {
    version = "${version != 'unspecified' ? version : '1.0.0-SNAPSHOT'}"
    println ("version is $version")

    appName = "${name != 'unspecified' ? name : 'test'}"
    println ("name is $appName")

    projectName = "${project != 'unspecified' ? project : 'test'}"
    println ("projectName is $projectName")
}

这是输出:

> Configure project :
version is 1.0.0-SNAPSHOT
name is test-project
projectName is root project 'test-project'