使用apache cordova构建android应用程序时出错

时间:2015-05-18 13:33:00

标签: android cordova

我已经在linux mint 17.1 xfce,jdk和android上安装了cordova,npm还可以,我可以创建新的cordova应用程序并添加android平台:

cordova创造...... cordova平台添加android ..

但是当我想构建android时我得到一个错误: 科尔多瓦建造...

Running command: /home/nasser/Desktop/app/app01/platforms/android/cordova/build 
ANDROID_HOME=/home/nasser/android/sdk
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386
Running: /home/nasser/Desktop/app/app01/platforms/android/gradlew cdvBuildDebug -b /home/nasser/Desktop/app/app01/platforms/android/build.gradle -Dorg.gradle.daemon=true

FAILURE: Build failed with an exception.

* Where:
Script '/home/nasser/Desktop/app/app01/platforms/android/CordovaLib/cordova.gradle' line: 64

* What went wrong:
A problem occurred evaluating root project 'android'.
> No installed build tools found. Please install the Android build tools version 19.1.0 or higher.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 20.222 secs

/home/nasser/Desktop/app/app01/platforms/android/cordova/node_modules/q/q.js:126
                    throw e;
                          ^
Error code 1 for command: /home/nasser/Desktop/app/app01/platforms/android/gradlew with args: cdvBuildDebug,-b,/home/nasser/Desktop/app/app01/platforms/android/build.gradle,-Dorg.gradle.daemon=true
ERROR building one of the platforms: Error: /home/nasser/Desktop/app/app01/platforms/android/cordova/build: Command failed with exit code 8
You may not have the required environment or OS to build this project
Error: /home/nasser/Desktop/app/app01/platforms/android/cordova/build: Command failed with exit code 8
    at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:131: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)

我能做什么?

4 个答案:

答案 0 :(得分:3)

一旦安装了android sdk,配置了ANDROID_HOME并更新了路径,就必须运行android命令才能实际下载sdk工具和android平台。

您不需要下载所有内容。您可以取消选中系统映像(如果您想使用模拟器,请保留一个),示例,android的源代码,文档和早于API 22的android apis(最新的android cordova版本4需要api 22)。

不确定你是否还需要安装带有android cordova 4的ant,因为看起来他们已经切换到了自动安装的graddle。

答案 1 :(得分:1)

我遇到了同样的问题,这是问题的解决方案:

  

找不到已安装的构建工具。请安装Android构建工具   版本19.1.0或更高版本。

1)你必须转到 android sdk tools 文件夹,例如(在我的情况下)我刚刚在我的控制台中编写了命令:$ ./android list sdk --all

2)在此文件夹中,您必须编写命令

$ ./android update sdk -u -a -t 20之后 var mongodb = require('mongodb'); var uri = 'some database connection string for mongodb '; function initilizeDb(cb) { mongodb.connect(uri, function(err, db) { if (err) { cb(err); return; } exports.db = db; //this is the part you need to do in sql connection or w.e after you get the async connection handler. cb(null); }); }; exports.initDb = initilizeDb;

这就是全部! :)

答案 2 :(得分:0)

它发生在我身上,因为/.../platforms/android/CordovaLib/cordova.gradle脚本无法识别Android SDK构建工具。

为了解决这个问题,我已经执行过" android"并且我已经安装了所有的构建工具,如下图所示:

Android SDK Manager

我想如果您只安装另一个有效的构建工具,那就是它。

问候。

编辑:Mayra Alejandra Rodriguez取代了我。这是另一种做同样的方法;)

答案 3 :(得分:0)

这将安装您需要的所有工具以及非常大的系统映像,使用--filter标志限制它们

android update sdk --no-ui --all