我用的是Android Studio 4.2.2。我创建了一个新项目,还没有添加任何东西到启动器代码,每当我点击构建或运行,我得到这个错误:

已安装的构建工具版本31.0.0已损坏。使用SDK管理器删除并重新安装。

我看了其他帖子的建议,但这些解决方案都不起作用。以下是我的尝试:

SDK Manager → SDK Tools → check "Show package details", uncheck 31.0.0, and click "Apply" → Uninstall 31.0.0 → check 31.0.0 and reinstall it In SDK Manager, deselect 31.0.0 and try installing an older version (e.g., I've tried 30.0.3) and update "buildToolsVersion" in build.gradle to the installed version Went to Project Structure → Properties and verified that 31.0.0 is selected for "Build Tools Version" and "Compiled SDK Version" Manually remove the stuff in the build-tools folder; i.e., rm -rf /path/to/android/sdk/build-tools/31.0.0 (it doesn't end in "-rc" like some other posts have described) Restart Android Studio Reinstall Android Studio

我是一个Android新手,只是想设置一个Hello, World!项目,真的不应该这么难。


当前回答

尝试重新安装SDK 31并重新启动Android Studio,它应该可以工作。否则,从SDK管理器中,将SDK 30安装到系统中,并将应用构建Gradle文件配置为

compileSdkVersion 30
buildToolsVersion "30.0.0"
defaultConfig {
    targetSdkVersion 30
}

其他回答

我卸载并安装31.0.0包,它仍然显示错误。

我使用了RC2构建工具,它在没有降级到SDK版本30的情况下编译和运行良好。

在app/build.gradle文件中:

buildToolsVersion "31.0.0-rc2"

我首先遵循user16475264的答案,但真正的问题(至少在我的情况下)是AGP (Android Gradle Plugin)的版本。所以,在升级到v7之后,我回滚了我对可执行文件和JAR文件的更改:dx -> d8 in ~/Library/Android/sdk/build-tools/31.0.0。这个工作

针对android 12目标sdk API 31

compileSdkVersion 31
buildToolsVersion 31.1.0

Android gradle插件(AGP)应该有最低版本设置为

7.0.2 or above

Android gradle包装版本可以设置

gradle-7.2-bin.zip

通过上述配置,构建错误将得到解决,您无需将构建工具版本降级到30.0.2

此外,如果你面临和intellij注释相关的构建错误,在你的app/build中添加以下配置。gradle文件

configurations {
        compile.exclude group: 'com.intellij', module: 'annotations'
        implementation.exclude group: 'com.intellij', module:'annotations'
    } 

你不需要指定android。Build Tools 27.0.3或更高版本的buildToolsVersion。

Build Tools 27.0.3或更高版本。记住,你不再需要 属性指定生成工具的版本 android。buildToolsVersion属性—插件使用最小值 默认为所需版本。

源(Developers.Android)

将gradle升级到7.0.2可能会有所帮助