在Linux上为Android构建Ionic应用程序失败,退出代码为2:无法找到'ANDROID_HOME'

ker*_*ene 3 ubuntu android build cordova ionic-framework

我正在尝试在Linux/Ubuntu 14.04 for Android上构建一个默认的示例应用程序.

我在做sudo ionic build android时收到标准错误信息:

无法找到'ANDROID_HOME'环境变量.尝试手动设置.

(见下面的完整记录)

但如果我这样做

echo $ ANDROID_HOME && echo $ JAVA_HOME && echo $ ANT_HOME

/家庭/ user3123726 /安卓/ SDK

/ usr/lib中/ JVM/JAVA -8-预言

在/ usr /斌/蚂蚁

并且命令android和cordova也可用.

  • 安装了Android SDK,其中包含当前可用的所有平台目标(以及Android SDK工具,平台工具和构建工具)
  • npm 3.3.9和节点4.2.2已安装
  • Cordova 5.3.3是通过npm安装的
  • 通过npm安装了Ionic 1.7.7
  • Apache Ant 1.9.3

ANDROID_HOME也在.bashrc上定义:

export ANDROID_HOME =/home/user3123726/Android/Sdk

export PATH = $ {PATH}:/ home/user3123726/Android/Sdk/platform-tools:/ home/user3123726/Android/Sdk/tools

我不知道构建过程失败的原因是什么.任何帮助表示赞赏 - 谢谢!

这里是离子项目创建的完整日志(基本上是创建,添加平台和构建):

离子启动myApp选项卡

下载:https://github.com/driftyco/ionic-app-base/archive/master.zip

[=============================] 100%0.0s

下载:https://github.com/driftyco/ionic-starter-tabs/archive/master.zip

[=============================] 100%0.0s

更新了hooks目录以具有执行权限更新Config.xml初始化cordova项目

您的离子项目已准备就绪!一些快速提示:[...缩短]

cd myApp

sudo ionic platform添加android

更新了hooks目录以具有执行权限

下载默认离子资源

正在下载:https://github.com/driftyco/ionic-default-resources/archive/master.zip

[=============================] 100%0.0s

完成添加默认的Ionic资源

为平台添加图标:android

添加android项目......

为Android平台创建Cordova项目:

路径:平台/ android

包装:com.ionicframework.myapp809922

名称:myApp

活动:MainActivity

Android目标:android-22

复制模板文件......

使用cordova-android@4.1.1创建的Android项目

运行命令:/home/user3123726/testing/myApp/hooks/after_prepare/010_add_platform_class.js/home/user3123726/testing/myApp

添加到body类:platform-android

将平台保存到package.json文件

sudo离子构建android

运行命令:/home/user3123726/testing/myApp/hooks/after_prepare/010_add_platform_class.js/home/user3123726/testing/myApp

添加到body类:platform-android

运行命令:/ home/user3123726/testing/myApp/platforms/android/cordova/build

[错误:无法找到'ANDROID_HOME'环境变量.尝试手动设置.

无法在'PATH'中找到'android'命令.尝试更新"PATH"以包含有效SDK目录的路径.]

ERROR构建其中一个平台:错误:/ home/user3123726/testing/myApp/platforms/android/cordova/build:命令失败,退出代码为2

您可能没有构建此项目所需的环境或操作系统

错误:/ home/user3123726/testing/myApp/platforms/android/cordova/build:命令失败,退出代码为2

在ChildProcess.whenDone(/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:139:23)

在emitTwo(events.js:87:13)

在ChildProcess.emit(events.js:172:7)

在maybeClose(internal/child_process.js:818:16)

在Process.ChildProcess._handle.onexit(internal/child_process.js:211:5)

ker*_*ene 5

固定它:

是权限问题

sudo chown -R $(whoami) /home/user3123726/.cordova
Run Code Online (Sandbox Code Playgroud)

赋予科尔多瓦权利

并做到了

离子添加平台android

离子构建android

没有sudo;)