I have downloaded the Android SDK from the official website, installed openjdk10, changed the variable DEFAULT_JVM_OPTS
in the avdmanager shell file to :
DEFAULT_JVM_OPTS='"-Dcom.android.sdklib.toolsdir=$APP_HOME" -XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee'
in order for avdmanager to work with Java 10, set the following environment variables in my ~/.zshrc
:
- export ANDROID_HOME="$HOME/Downloads/android/"
- export ANDROID_SDK_HOME="$HOME/.android"
- export JAVA_HOME='/usr/lib/jvm/java-10-openjdk'
and downloaded an SDK using the command:
$ANDROID_HOME/tools/bin/sdkmanager --verbose "system-images;android-25;google_apis;x86"
However, when I try to create a new AVD via the command:
$ANDROID_HOME/tools/bin/avdmanager create avd -n test -k "system-images;android-25;google_apis;x86"
it just prints null
and exits. Even If when I run
$ANDROID_HOME/tools/bin/avdmanager
all it does it just prints null.
If it may help, I changed the avdmanager file again and added a line that prints the arguments the file prepares which it then passes to the $JAVACMD
command. The arguments look like this:
-Dcom.android.sdklib.toolsdir=/home/aonemd/Downloads/android/tools -XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee -classpath /home/aonemd/Downloads/android/tools/lib/dvlib-26.0.0-dev.jar:/home/aonemd/Downloads/android/tools/lib/jimfs-1.1.jar:/home/aonemd/Downloads/android/tools/lib/jsr305-1.3.9.jar:/home/aonemd/Downloads/android/tools/lib/repository-26.0.0-dev.jar:/home/aonemd/Downloads/android/tools/lib/j2objc-annotations-1.1.jar:/home/aonemd/Downloads/android/tools/lib/layoutlib-api-26.0.0-dev.jar:/home/aonemd/Downloads/android/tools/lib/gson-2.3.jar:/home/aonemd/Downloads/android/tools/lib/httpcore-4.2.5.jar:/home/aonemd/Downloads/android/tools/lib/commons-logging-1.1.1.jar:/home/aonemd/Downloads/android/tools/lib/commons-compress-1.12.jar:/home/aonemd/Downloads/android/tools/lib/annotations-26.0.0-dev.jar:/home/aonemd/Downloads/android/tools/lib/error_prone_annotations-2.0.18.jar:/home/aonemd/Downloads/android/tools/lib/animal-sniffer-annotations-1.14.jar:/home/aonemd/Downloads/android/tools/lib/httpclient-4.2.6.jar:/home/aonemd/Downloads/android/tools/lib/commons-codec-1.6.jar:/home/aonemd/Downloads/android/tools/lib/common-26.0.0-dev.jar:/home/aonemd/Downloads/android/tools/lib/kxml2-2.3.0.jar:/home/aonemd/Downloads/android/tools/lib/httpmime-4.1.jar:/home/aonemd/Downloads/android/tools/lib/annotations-12.0.jar:/home/aonemd/Downloads/android/tools/lib/sdklib-26.0.0-dev.jar:/home/aonemd/Downloads/android/tools/lib/guava-22.0.jar com.android.sdklib.tool.AvdManagerCli
Also, the ~/.android
directory contains only these three files/folders:
- adbkey
- adbkey.pub
- cache/
Is there something I'm missing here?
I have found out where the problem is. The variable DEFAULT_JVM_OPTS
should be
DEFAULT_JVM_OPTS='"-Dcom.android.sdkmanager.toolsdir=$APP_HOME" -XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee'
instead of
DEFAULT_JVM_OPTS='"-Dcom.android.sdklib.toolsdir=$APP_HOME" -XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee'