Error: Could not initialize class com.android.sdklib.repository.AndroidSdkHandler
AndroidReact NativeReact Native-AndroidAndroid Problem Overview
I've setup the environment for react native on Windows. But when I run the command
react-native run-android
I get the following errors -
* What went wrong:
A problem occurred configuring project ':app'.
> Failed to notify project evaluation listener.
> Could not initialize class com.android.sdklib.repository.AndroidSdkHandler
How do I fix this?
Android Solutions
Solution 1 - Android
This is because your classpath build tools in build.gradle root project is deprecated. Update it like this
buildscript {
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.0'
}
}
and after that update your minimum sdk and build tools to latest and no problem again
Solution 2 - Android
I encountered this error while running the following command in macOS
./gradlew assembleRelease --stacktrace
and got the exact error posted. I solved the problem by setting $JAVA_HOME environment variable to your JDK installation. In my case I used the bundled JDK in Android Studio for macOS:
export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home"
for Windows, just add JAVA_HOME to your user or system variables pointing to
"C://Program Files/Java/jdk_1.x_"
folder and try running react-native run-android again.
Solution 3 - Android
This will resolve issue to follow below steps:
1) Change Project level Gradle version build.gradle
Earlier version name like
classpath 'com.android.tools.build:gradle:2.3.2'
Change with new version or latest version you have
classpath 'com.android.tools.build:gradle:4.2.1'
2) Change gradle-wrapper.properties from \gradle\wrapper
Earlier version name like
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8.1-bin.zip
Change with new version or latest version you have
distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-bin.zip
Solution 4 - Android
This is a problem with JDK version 9. Android tools does not support building with Java 9 officially yet. And it has such problems.
Downgrading to Java version 8 will fix the problem.
Solution 5 - Android
On Ubuntu 18.04, this fixed the problem.
-
Run this command
sudo apt-get install openjdk-8-jdk
-
Add this to
~/.bashrc
export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"
-
Restart your terminal or IDE.
Solution 6 - Android
Fixed the error by adding the following in .bash_profile
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home
export PATH=$PATH:$JAVA_HOME/bin
export ANDROID_HOME=/Users/saif-ams/MyFiles/applications/androidsdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
Solution 7 - Android
The possible reason is the Gradle 's version and JDK's version is not matched.
At begin, My computer's gradle version is 4.10.1 and JDK is 12.
My solution is:
Download JDK 1.8 from oracle's website, set JAVA_HOME with JDK8 and It done
Solution 8 - Android
Replace jcenter() with google()
and
mavenCentral()
in project level gradle file
Solution 9 - Android
According to the log, add the google() repository to the build.gradle file in the app directory as shown below:
allprojects {
repositories {
mavenCentral()
google()
jcenter()
}
}