Android Studio:“无法为org.gradle.api.Project类型的项目获取未知属性'VERSION_NAME'”

时间:2016-11-04 10:46:07

标签: java android android-studio gradle android-gradle

我是Android Studio的新手。我正在尝试在我的项目中使用此项目库:https://github.com/2dxgujun/AndroidTagGroup

所以我做的是将它作为模块导入到我的项目中;名为“androidtaggroup”

现在,我在编译时遇到以下错误:

"Could not get unknown property 'VERSION_NAME' for project ':androidtaggroup' of type org.gradle.api.Project."

以下是Gradle文件中出现问题的地方:

 defaultConfig {
        applicationId 'me.gujun.android.taggroup.demo'
        minSdkVersion 8
        targetSdkVersion 21
        versionName project.VERSION_NAME // ERROR HERE !!!!
        versionCode Integer.parseInt(project.VERSION_CODE)
    }

任何人都可以告诉我如何解决这个问题?

谢谢!!!

3 个答案:

答案 0 :(得分:2)

修复方法是在那里定义您的版本名称或使用自定义变量。默认情况下,project.VERSION_NAME不存在,因此您无法使用它。这基本上就是错误信息告诉你的。

defaultConfig {
    applicationId 'me.gujun.android.taggroup.demo'
    minSdkVersion 8
    targetSdkVersion 21
    versionName "1.2.3"
    versionCode Integer.parseInt(project.VERSION_CODE)
}

或替代方案:

// somewhere above
def VERSION_NAME = "1.2.3"

// and the usage:
defaultConfig {
    applicationId 'me.gujun.android.taggroup.demo'
    minSdkVersion 8
    targetSdkVersion 21
    versionName VERSION_NAME
    versionCode Integer.parseInt(project.VERSION_CODE)
}

在您更改后,您可能会遇到使用project.VERSION_CODE的相同问题:

versionCode Integer.parseInt(project.VERSION_CODE)

修复是相同的:提供有效的自定义变量或常量

答案 1 :(得分:0)

buildscript {
    ext.kotlin_version = '1.3.31'
    ext.room_version = '2.1.0-alpha01' // Add this line in your build gradle
    repositories {
        google()
        jcenter()

    }

答案 2 :(得分:0)

我有类似的问题。在build.gradle(项目:“ PROJECT_NAME”)的ext {}中未定义“ VERSION_NAME”