错误:无法获取extra properties扩展中的'compileSdkVersion'属性,因为它不存在。

9

我在我的安卓项目中使用了SpecialCyCi/AndroidResideMenu第三方库(Github)。我已经将ResideMenu项目导入到我的工作区,并将其设置为模块依赖库项目。

构建项目时,我遇到了以下错误:

Error:(7) A problem occurred evaluating project ':ResideMenu'.
Cannot get property 'compileSdkVersion' on extra properties extension as it does not exist  

android studio log error


你可以通过将应用级别 build.gradle 中的 compileSdkVersion 值复制并粘贴到库的 compileSdkVersion 中来消除此错误。 - onexf
2个回答

5
如果您能提供更多解释,我可以更好地帮助您,但很有可能问题出在您的Gradle文件中。您需要在顶级Gradle文件中声明扩展文件。让我解释一下它是如何工作的:
在您的应用程序级别的Gradle文件中,应该有以下配置:
def config = rootProject.extensions.getByName("ext")

您可以像下面这样使用扩展文件中的配置:

您可以使用扩展文件中的配置:

android { 
  compileSdkVersion config.getAt("compileSdkVersion") 
}

但是,您需要将扩展文件添加到项目的根目录中: dependency-versions.gradle
ext {
compileSdkVersion = 25
//...
}

你需要将它告诉你的顶级Gradle,像这样:

def config = rootProject.extensions.getByName("ext")

0

在你的build.gradle中添加AndroidResideMenu依赖项

buildscript {
repositories {
    mavenCentral()
}

dependencies {
    classpath 'com.android.tools.build:gradle:0.12.2'
    classpath 'com.jakewharton.sdkmanager:gradle-plugin:0.12.0'  //add like this
 }
}

ext {
    compileSdkVersion = 19
    buildToolsVersion = "20.0.0"
}

1
你能解释一下吗?我在 CI 机器上遇到了这个错误,但似乎在任何人的本地机器上都没有出现过。我不确定为什么需要将它添加为构建脚本的依赖项。 - android_student

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