【问题标题】:cordova platform add android - Not working on Mac Os科尔多瓦平台添加 android - 不适用于 Mac Os
【发布时间】:2014-06-03 22:01:17
【问题描述】:

我是 cordova 移动应用程序开发的新手。我已经安装了Node,然后安装了cordova。我已经完成了这些步骤来创建一个 Cordova android 应用程序。

  1. cordova create hello com.example.hellow HelloWorld 这很好
  2. cd hello 导航到目录_
  3. cordova 平台添加 android 这不起作用

这是显示我的终端的错误

Jeys-MacBook-Pro:hello mactec$ cordova platform add android
Creating android project...

/Users/mactec/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:126
                    throw e;
                          ^
Error: The command "android" failed. Make sure you have the latest Android SDK installed, and the "android" command (inside the tools/ folder) is added to your path.
    at /Users/mactec/.cordova/lib/android/cordova/3.4.0/bin/lib/check_reqs.js:85:29
    at _rejected (/Users/mactec/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:808:24)
    at /Users/mactec/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:834:30
    at Promise.when (/Users/mactec/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:1079:31)
    at Promise.promise.promiseDispatch (/Users/mactec/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:752:41)
    at /Users/mactec/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:574:44
    at flush (/Users/mactec/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:108:17)
    at process._tickCallback (node.js:415:13)
Error: /Users/mactec/.cordova/lib/android/cordova/3.4.0/bin/create: Command failed with exit code 8
    at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/src/superspawn.js:126: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)
Jeys-MacBook-Pro:hello mactec$ 

请帮我解决这个问题

提前致谢。

【问题讨论】:

    标签: android macos cordova


    【解决方案1】:

    问题是 .bash_profile 上的 PATH 定义错误。

    我为此做了什么。

    1. 更改 bash 配置文件 open ~/.bash_profile 上的路径。然后在文本编辑器中打开 bash 配置文件。
    2. 将正确的路径添加到 android SDK。如果我们有android studio,那么路径是/Application/Android Studio.app/sdk/,所以我们需要将此路径添加到.bash_profile。 export PATH=${PATH}:/Applications/Android\ Studio.app/sdk/tools
    3. 然后关闭所有终端并再次打开并编码... :)

    您可以通过在终端上输入 android 来检查它是否正常工作。

    【讨论】:

    • 我已将 android-sdk-macosx 文件夹放在根目录下,然后将其添加到 .bash_profile export PATH=/android-sdk-macosx/tools:${PATH}
    • 我仍然遇到这个问题,位于 mac osx 中的 .bash 配置文件在哪里我有 eclipse 而不是 android studio,请帮助
    • 我终于从终端打开了 .bash 配置文件,但上面的错误还没有消除,请帮忙
    【解决方案2】:

    错误显示得很清楚。您必须安装 android sdk 并在 SDK 的系统变量中设置正确的路径,cordova 才能工作。请参阅cordova 文档中的先决条件http://cordova.apache.org/docs/en/3.0.0/guide_cli_index.md.html.Forcordova 3.4 项目 android SDK 必须已安装目标 19。

    在此处下载 SDK http://developer.android.com/sdk/index.html

    这里是平台指南以获取更多信息http://cordova.apache.org/docs/en/3.0.0/guide_platforms_android_index.md.html#Android%20Platform%20Guide

    如果您已经安装了 SDK,请检​​查路径是否被正确引用以供 cordova 查找

    【讨论】:

    • 嗨,我的 Mac 上有 android studio。但为什么这个问题仍然没有解决。显示同样的错误你能帮帮我吗?
    • 你有 android sdk 包?确保你已经设置了路径变量,路径应该设置到 sdk 管理器的工具和工具提示
    • 是的,我解决了更改 bash_profile 的问题。非常感谢兄弟。
    【解决方案3】:

    此错误还有另一个潜在原因:您的 project/www 目录中有错误文件。我无意中在 www/ 中包含了一个名为 project/www/:q (“冒号 q”)的空白文件(注意我使用 Vim)!无论如何,这样做会产生 JeyTheva 指出的确切错误。因此,删除该文件并执行以下操作:

    • cordova 平台删除 android
    • rm -r ~/.cordova/lib/android
    • cordova 平台添加 android

    现在重建并在您的设备上运行。如果你做了类似于我所做的事情,这应该可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-31
      • 2015-03-23
      • 1970-01-01
      相关资源
      最近更新 更多