“cordova platform add android”因意外错误而失败

时间:2013-07-13 17:36:40

标签: android ubuntu cordova

我正在尝试在Ubuntu 13.04上安装Phonegap,我已经安装了包含所有可用软件包的Android SDK,但运行以下命令:

cordova platform add android

因意外错误而失败:

[Error: An error occured during creation of android sub-project. An unexpected error occurred: "$ANDROID_BIN" create project --target $TARGET --path "$PROJECT_PATH" --package $PACKAGE --activity $ACTIVITY &>/dev/null exited with 1
Deleting project...

我已经为Android设置了PATH变量(工具/平台工具),并安装了java和ant。

为什么会这样?如何获得更详细的错误消息?

7 个答案:

答案 0 :(得分:8)

你试过用sudo运行命令吗? 它可能是一个权限问题。

如果仍然无法正常工作,请尝试使用详细模式运行它,即sudo -d cordova ...

如果这是由活动名称空格引起的,请参阅此答案的评论。

https://issues.apache.org/jira/browse/CB-4198报告了一个问题,我已发送拉取请求以删除空格https://github.com/phonegap/phonegap/pull/39

答案 1 :(得分:4)

正如@José所说,“hello”示例不起作用,因为不允许使用空格。 将其更改为“HelloWorld”解决了这个问题。

答案 2 :(得分:2)

删除config.xml中名称标记之间的空格

MyAppName<名称>

答案 3 :(得分:1)

在我的情况下,使用debian wheezy,来自http://docs.phonegap.com/en/edge/guide_cli_index.md.html#The%20Command-line%20Interface的示例不适用于此错误:

  

[错误:在创建android子项目期间发生错误。发生意外错误:“$ ANDROID_BIN”创建项目--target $ TARGET --path“$ PROJECT_PATH” - package $ PACKAGE --activity $ ACTIVITY&> / dev / null退出1   删除项目......   ]

添加$ JAVA_HOME(Java sun,openjdk无效)和$ PATH andriod sdk路径.../sdk/platform-tools:../sdk/tool

我的案例中的解决方案是项目名称:

不起作用的示例:

  

cordova创建HelloWorld com.example.hello“Hello World”

这可行:

  

cordova创建HelloWorld com.example.hello HelloWorld

答案 4 :(得分:0)

确保您的包裹和项目名称正确无误,遵循com.mycompanyname.myappname格式,没有任何数字或破折号。

Here's the issue being tracked by PhoneGap

答案 5 :(得分:0)

如果用textEdit打开创建文件(phonegap-2.7.0 / lib / android / bin / create),则会有一行列出

ANDROID_BIN=”${ANDROID_BIN:=$( which android )}”

“哪个android”是问题的原因

如果将此行替换为Android工具(SDK)的完整路径,则应解决此问题。它看起来像这样:

ANDROID_BIN=/Users/cswjs/Documents/Dev/adt-bundle/sdk/tools/android

或者尝试使用open ~/.bash_profile修改〜/ .bash_profile到完整路径

export PATH=${PATH}:/Users/cswjs/Documents/Dev/adt-bundle/sdk/platform-tools:/Users/cswjs/Documents/Dev/adt-bundle/sdk/tools

使用cordova create foo com.example.foo foo创建名为foo的新项目。确保项目名称应该相同。

希望这可以帮助别人!

答案 6 :(得分:0)

在我的情况下,创建脚本中有很多地方需要删除> null来查看真实日志。我终于解决了我的问题 sudo chown -R sachinsharma~ / .cordova