avdmanager: Command failed with exit code 1 cordova

后端 未结 5 517
抹茶落季
抹茶落季 2021-01-12 06:34

i just started to make my first native cordova app from cordova official tutorial, and when I run

ayam@laptop:~/Documents/learn/hello$ cordova requirements
<         


        
相关标签:
5条回答
  • 2021-01-12 07:16

    This problem has possibly 3 origins:

    1. Android tools path settings
    2. JAVA installation
    3. JAVA_HOME path settings

    I have explained how to solve all of these on macOS below (Windows might be slightly different)

    1. Android tools might not be added with the correct path:

    I solved it by doing this in macOS terminal:

    PATH=$PATH:$HOME/Library/Android/Sdk/emulator
    PATH=$PATH:$HOME/Library/Android/Sdk/tools
    PATH=$PATH:$HOME/Library/Android/Sdk/tools/bin
    PATH=$PATH:$HOME/Library/Android/Sdk/platform-tools
    export ANDROID_HOME=$HOME/Library/Android/
    

    These are all the required path variables by Cordova.

    Important:
    Make sure that there is a folder called /Android/ inside your user folder inside Library!

    It used to be installed directly to the user folder instead of in Library so therefor the confusion.

    2. JAVA might be missing or the wrong version:

    You need to use JAVA SE v 1.8 for Cordova to work.
    Do this in the terminal:

    /usr/libexec/java_home -V
    

    and check if that version is available or not. If not you can research how to install it in there with homebrew. Then try the above command again to double check it installed properly.

    3. JAVA_HOME path might not be set up properly

    Do this in the terminal:

    echo $JAVA_HOME
    

    If you see nothing that means your $JAVA_HOME variable is not exported properly. You can solve this by doing this in the terminal:

    export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
    

    That's all!

    0 讨论(0)
  • 2021-01-12 07:17

    To make changes permanent on your system and the variable keep working after close the terminal, ou after a restart use:

    nano ~/.bash_profile 
    

    Add lines:

    export ANDROID_HOME=/YOUR_PATH_TO/android-sdk
    export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
    export PATH=$PATH:$ANDROID_HOME/platform-tools
    export PATH=$PATH:$ANDROID_HOME/tools
    export PATH=$PATH:$ANDROID_HOME/tools/bin
    export PATH=$PATH:$ANDROID_HOME/emulator
    

    To make it available immediately run

    source ~/.bash_profile
    

    Reopen terminal and check if it worked:

    echo $ANDROID_HOME
    echo $JAVA_HOME
    
    0 讨论(0)
  • 2021-01-12 07:19

    This problem arises when there is no virtual device set up in the system (No target version or no target device). I am not sure if that is a must. You can add a device using SDK manager.

    In SDK manager, Add an android repository (For example - Android 5.0.1 API 21) and all dependencies like SDK Tools etc.

    Then try cordova requirements. If you are able to run an instance of emulator then this error will go off..(It worked for me that way!)

    Hope this helps..

    0 讨论(0)
  • 2021-01-12 07:19

    If you are ready this in 2019 here is what you need to for this problem, earlier that would have been a path variables issues regardless of what OS it is. While we are dealing with Open JDK 11+ just for being pretty advanced or updated to latest releases.

    Step 1: Remove all available JavaVirtualMachines Step 2: Check whether your system is Java free (No Java JVM or JRE) Step 3: Install Java 8 JDK ( As Cordova is supported by Java 1.8 and corresponding JREs) Step 4: Install Android Targets using sdkmanager command. Step 5: Install whatever you need from requirements and set their path in mac using bash profile or temporary paths. Or you may need to set it again and again.

    You are good to go, Sorry I could not share the commands over here as they are already available in Google. No Offence! I knew you were close fixing this, but I hope even this helps you understanding Cordova requirements.

    0 讨论(0)
  • 2021-01-12 07:26

    In Android Studio, you can use cmd + ; for Mac or Ctrl + Alt + Shift + S for Windows/Linux to pull up the Project Structure dialog. In there, you can set the JDK location as well as the Android SDK location.

    Add this to your .bashrc or .zshrc config so that the JAVA_HOME variable points to the Java version used by Android.

    0 讨论(0)
提交回复
热议问题