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

Abr*_*hew 11 android android-build android-studio android-sdk-build-tools

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

工作室版本4.2.1

尝试重新安装和删除以前的版本尝试从 build-tools-30.0.3 添加 dx.jar 和 dx.bat (这不是一个好的解决方案,即使添加后显示 dx.jar 文件不存在)

Aza*_*mov 31

主要问题是 SDK 构建工具 31 中缺少两个文件:

dx.bat dx.jar 解决方案是这些文件在文件位置中被命名为 d8,因此将其名称更改为 dx 将解决该错误。

步骤如下。

对于 Windows,请转至该位置

 "C:\Users\user\AppData\Local\Android\Sdk\build-tools\31.0.0"
find a file named d8.bat. This is a Windows batch file.

rename d8.bat to dx.bat.

in the folder lib ("C:\Users\user\AppData\Local\Android\Sdk\build-tools\31.0.0\lib")

rename d8.jar to dx.jar
Run Code Online (Sandbox Code Playgroud)

请记住 AppData 是一个隐藏文件夹。打开隐藏项目以查看 AppData 文件夹。

对于 macOS 或 Linux

# change below to your Android SDK path
cd ~/Library/Android/sdk/build-tools/31.0.0 \
  && mv d8 dx \
  && cd lib  \
  && mv d8.jar dx.jar
Run Code Online (Sandbox Code Playgroud)

现在您可以运行该项目了

  • 谢谢,你拯救了这一天。 (3认同)

小智 14

正如其他问题中所指出的,问题是 dx(或 dx.bat)不再可用。这是 2018 年宣布的一项有目的的改变。

建议将 d8 重命名为 dx 或从构建工具 30.0.0 复制它的解决方案解决该问题,但 dx 不太可能返回。因此,您将不得不在每个开发人员的机器上修补每个构建工具安装。

更向前兼容的解决方案是升级您的 Android gradle 插件。这不像仅仅更改 gradle 中的数字那么简单,但我发现 Android Studio 的升级过程非常适合我的项目。如果你打开你的项目级别build.gradle文件,请从您的灯泡上方的灯泡中打开快速修复菜单

dependencies{
    classpath 'com.android.tools.build:gradle:...'
Run Code Online (Sandbox Code Playgroud)

部分。从这里,选择升级到最新的可能版本(在我的例子中不仅仅是 4.x)。

快速修复菜单打开。 选择“调用升级助手升级到 7.1.3”选项

然后我对所有内容运行升级步骤: 升级助手窗口打开,所有项目均已选中。

不过,我的问题是 Unity 特有的:我需要使用系统 Android SDK,而不是内置的 SDK,但 Unity 本身喜欢重新生成这些构建文件,并且只会获取它能找到的最新构建工具。为了减少手动步骤并避免导出我的项目,我选择生成模块级build.gradle从“播放器设置>发布设置”窗口生成模块级文件: 发布设置部分打开,其中“自定义主 Gradle 模板”和“自定义启动器 Gradle 模板”打开

这两个文件都会有一行如下所示:

buildToolsVersion '**BUILDTOOLS**'
Run Code Online (Sandbox Code Playgroud)

您可以将其替换为:

buildToolsVersion '30.0.0'
Run Code Online (Sandbox Code Playgroud)

通过 Unity,我可以像以前一样构建和部署项目,而无需修改buildtools安装。


小智 0

检查buildToolsVersion输入build.gradle文件。SDK Manager -> SDK Tools它应该与您从哪里找到的安装的相同Android SDK Build-Tools 31

dx文件将在 sdk 的位置可用Android SDK dir\build-tools,您将找到31.0.0-rc3 (Open this folder and check manually if dx file is there or not). 如果一切正常,则重新启动并重建项目。

如果dx文件不存在,则从 Android Studio 卸载构建工具,然后从 Android Studio 重新安装。