2

I'm using Ubuntu 16.04, and I'm trying to build a Ionic 2 app using:

sudo cordova build android --release --nofetch

It brings me the error:

Error: Failed to find 'ANDROID_HOME' environment variable. Try setting setting it manually. Failed to find 'android' command in your 'PATH'. Try update your 'PATH' to include path to valid SDK directory.

If I use printenv ANDROID_HOME it brings me /home/evolution6/Android/Sdk same way: printenv PATH brings

/home/evolution6/Android/Sdk/platform-tools
/home/evolution6/Android/Sdk/tools

My project settings are:

    @ionic/cli: 3.16.0 
    cordova CLI: 7.1.0

   Local packages: 
    @ionic/app-scripts: 3.0.1
    Cordova Platforms: android 6.3.0 
    Ionic Framework: ionic-angular 2.2.0
   System:
    Android SDK: 26.1.1
    Node: v6.11.5
    npm: 3.10.10
despin
  • 94
  • 1
  • 7

2 Answers2

2

It seems that when I used sudo to build android my PATHs to ANDROID_HOME was gone.

Then I solved this firstly, running the command in this dirty way:

sudo ANDROID_HOME=$HOME/Android/Sdk cordova build android --release --nofetch

I solved this by setting chown to cordova

sudo chown -R USER:USER /home/[USUARIO]/.cordova

Then I was able to run:

cordova build android --release --nofetch
despin
  • 94
  • 1
  • 7
0

This works for me Ubuntu 18.04

sudo gedit ~/.bashrc

Then add:

export JAVA_HOME=/usr/lib/jvm/java-8-oracle

export ANDROID_HOME=/home/USER/Android/Sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform_tools

export GRADLE_HOME=/opt/gradle/gradle-5.2.1
export PATH=${PATH}:$GRADLE_HOME/bin

... change USER with your user

Restart bash

source ~/.bashrc
Florin
  • 5,781
  • 2
  • 20
  • 30