Android Studio error "Installed Build Tools revision 31.0.0 is corrupted"

ID : 10259

viewed : 238

Tags : androidandroid-studioandroid-emulatorandroid-studio-4.2android

Top 5 Answer for Android Studio error "Installed Build Tools revision 31.0.0 is corrupted"

vote vote

100

First of all, I faced this issue in Android Studio 4.2.2 and you do not need to downgrade the SDK build tool from 31 to 30 or change compile SDK version.

The main problem is the two files missing in SDK build tool 31 that are:

  1. dx.bat
  2. dx.jar

The solution is that these files are named d8 in the file location so changing their name to dx will solve the error.

The steps are below.

For Windows

  1. go to the location

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

  3. rename d8.bat to dx.bat.

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

  5. rename d8.jar to dx.jar

Remember AppData is a hidden folder. Turn on hidden items to see the AppData folder.

For macOS or 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 

Now run your project.

vote vote

90

The same problem was encountered and solved with a few line changes.

Check the Project code panel, and go to Gradle Scriptsbuild.gradle file,

  1. Change three places from 31 to 30: compileSdkVersion, buildToolsVersion, and targetSdkVersion
  2. You'll notice a lightbulb hit occurring on modified lines. Click and choose sync [to version 30]. Android Studio will automatically download BuildTool V30 and change project settings.

Now run the app. It works for me.

vote vote

71

The point is not to downgrade target API level, but to build exactly for API level 31 to prepare and test an app for Android 12!

It looks like DX is removed from SDK in favor of D8.

It looks like that Android Gradle plugin 4.x is not aware of that.

At the moment I see only two solutions:

  1. To stay with AGP 4.x, one should copy DX from 30.0.3 to 31.0.0
  2. Upgrade AGP to 7.x
vote vote

69

After changing these settings, it seems to work fine. I downloaded SDK version 30 from SDK Manager.

android {     compileSdkVersion 30     buildToolsVersion "30.0.3"     defaultConfig {         applicationId "com.anurag.myapplication"         minSdkVersion 23         targetSdkVersion 30         versionCode 1         versionName "1.0"         testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"     } 
vote vote

53

The solution for Mac is pretty similar to Windows, yet not fully conclusive from reading the Windows solution. The paths and file names are different, but the problem is basically the same.

  • Open the terminal application and type the commands below
  • Hit Enter after every command line you type to execute the command
  • Type cd /Users/admin/Library/Android/sdk/build-tools/
  • Attention: Your user directory name may be different from "admin"
  • Navigate to the corresponding version: type cd 31.0.0
  • Type cp d8 dx
  • Type cd lib
  • Type cp d8.jar dx.jar

This fixed my issues on macOS v10.13.6 (High Sierra).

Top 3 video Explaining Android Studio error "Installed Build Tools revision 31.0.0 is corrupted"

Related QUESTION?