Reputation: 1237
As metioned in the above doc, I have already installed the required software for Phonegap as I have getting versions:
For Java:
$ java -version java version "1.7.0_51" Java(TM) SE Runtime
Environment (build 1.7.0_51-b13) Java HotSpot(TM) 64-Bit Server VM
(build 24.51-b03, mixed mode)
For ANT
$ ant -version
Apache Ant(TM) version 1.8.2 compiled on December 3
2011
For Node.JS
$ npm -version
1.4.3
Now, the problem is when I create a phonegap project for Android like this "$ cordova create hello com.example.hello HelloWorld", it creates the project directory with "hello" name.
But now, when I enter this command "$ cordova platform add android" in "hello" directory, it gives me the error given below:
/hello$ cordova platform add android Creating android project...
/home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:126 throw e; ^ Error: An error occurred while listing Android targets at /home/deep/.cordova/lib/android/cordova/3.4.0/bin/lib/check_reqs.js:87:29 at _rejected (/home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:808:24) at /home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:834:30 at Promise.when (/home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:1079:31) at Promise.promise.promiseDispatch (/home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:752:41) at /home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:574:44 at flush (/home/deep/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:108:17) at process._tickCallback (node.js:415:13) Error: /home/deep/.cordova/lib/android/cordova/3.4.0/bin/create: Command failed with exit code 8 at ChildProcess.whenDone (/usr/lib/node_modules/cordova/src/superspawn.js:112:23) at ChildProcess.EventEmitter.emit (events.js:98:17) at maybeClose (child_process.js:743:16) at Process.ChildProcess._handle.onexit (child_process.js:810:5)
How to get out of this problem?
Upvotes: 6
Views: 13260
Reputation: 121
I had the same problem, none of the previous anwsers works for me. The problem is that phonegap is not compatible with Android API 20.
First make sure you have setted all environment variables nedded:
export ANT_HOME=/usr/share/ant
export JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64"
export PATH=${PATH}:~/sdk/adt-bundle-linux-x86_64-20140702/sdk/platform-tools/:~/adt/adt-bundle-linux-x86_64-20140702/sdk/tools:$JAVA_HOME/bin:$ANT_HOME/bin
Go to the shell and run android, once there, check the API 19 and install it:
$ android
Now create a device from android avd using API 19 you have downloaded before:
$ android avd
Now try to add the platform to cordova:
$ cordova platform add android
Or check the requirements using cordova check script (~/.cordova/lib/android/cordova/3.5.0/bin/check_reqs)
Upvotes: 4
Reputation: 648
I could fix this issue by following the cordova-guide. in short:
add the named folders to the PATH
variable:
export PATH=${PATH}:/home/me/opt/adt-bundle/sdk/platform-tools:/home/me/opt/adt-bundle/sdk/tools
Upvotes: 7
Reputation: 376
hey man if you are using windows then you are missing environment variables. try this for this error: "An error ocurred while listing Android targets"
go to My computer - right click - properties - advance system settings - environment variables.
add some variables needed, I did it like this
examples using my local scenario:
SDKHOME -> C:\development\AndroidADTBundle\ADT\sdk JAVAJDK-> C:\Program Files\Java\jdk1.8.0_05\
After doing then do your command, in my case is phonegap instead of cordova. And it should work: COMMAND: phonegap build android
let me know how it goes.
Upvotes: 6
Reputation: 307
Have you downloaded the Android SDK?
try typeing the command 'android' in command-line or terminal
See the answer I typed out here:
Upvotes: 2
Reputation: 23893
try this one
install ant using brew
Download and install Homebrew by executing following command in terminal:
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
Install Apache Ant via Homebrew by executing
brew install ant
Run the PhoneGap build again and it should successfully compile and install your Android app.
Upvotes: 0