大厦离子应用为Android在Linux上失败,退出code 2:无法找到'ANDROID_HOME“ [英] Building Ionic app for Android on Linux fails with exit code 2: Failed to find 'ANDROID_HOME'

查看:261
本文介绍了大厦离子应用为Android在Linux上失败,退出code 2:无法找到'ANDROID_HOME“的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图建立在Linux / Ubuntu的14.04为Android默认的示例应用程序。

我在做的时候得到一个标准的错误信息须藤离子构建Android


  

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


(见完整日志楼下)

但是,如果我这样做


  

回声$ ANDROID_HOME&放大器;&安培;回声$ JAVA_HOME和放大器;&安培;回声$ ANT_HOME


  
  

    

/家庭/ user3123726 / Android版/ SDK


    
    

/ usr / lib目录/ JVM / java的8甲骨文


    
    

在/ usr /斌/蚂蚁


  

和命令Android和科尔多瓦也可提供。


  • 的Andr​​oid SDK安装与所有平台的目标目前(加上Android SDK工具,平台,工具和编译工具)

  • NPM 3.3.9和4.2.2节点安装

  • 科尔多瓦5.3.3是通过NPM安装

  • 离子1.7.7是通过NPM安装

  • Apache Ant的1.9.3

ANDROID_HOME也.bashrc中定义的:


  

出口ANDROID_HOME = /家庭/ user3123726 / Android版/ SDK


  
  

出口PATH = $ {PATH}:/家庭/ user3123726 / Android版/ SDK /平台的工具:/家庭/ user3123726 / Android版/ SDK /工具


我不知道那是什么构建过程失败的原因。任何帮助是AP preciated - !谢谢

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


  

离子开始对myApp标签页


  
  

    

下载: https://github.com/driftyco/ionic-应用基/存档/ master.zip


    
    

[=============================] 100%0.0S


    
    

下载: https://github.com/driftyco/ionic-启动器标签/存档/ master.zip


    
    

[=============================] 100%0.0S


    
    

更新了钩
    目录具有执行权限更新的Config.xml初始化
    科尔多瓦项目


    
    

您离子项目是准备去!一些快速提示:[...缩短]


  
  
  

CD对myApp


  
  

sudo的离子平台的android添加


  
  

    

更新了钩目录具有执行权限


    
    

下载默认离子资源


    
    

下载: https://github.com/driftyco/ionic-默认的资源/存档/ master.zip


    
    

[=============================] 100%0.0S


    
    

完成添加默认离子资源


    
    

添加图标平台:Android版


    
    

添加Android项目...


    
    

创建科尔多瓦项目为Android平台:


    
    

路径:平台/ Android版


    
    

套餐:com.ionicframework.myapp809922


    
    

名称:对myApp


    
    

活动:MainActivity


    
    

Android的目标:Android的22


    
    

复制模板文件...


    
    

与cordova-android@4.1.1创建的Andr​​oid项目


    
    

运行命令:
    /home/user3123726/testing/myApp/hooks/after_$p$ppare/010_add_platform_class.js /家庭/ user3123726 /测试/对myApp


    
    

补充身体类:平台的Andr​​oid


    
    

保存平台的package.json文件


    
    

须藤离子构建Android


    
    

运行命令:/home/user3123726/testing/myApp/hooks/after_$p$ppare/010_add_platform_class.js的/ home / user3123726 /测试/对myApp


    
    

补充身体类:平台的Andr​​oid


    
    

运行命令:/家庭/ user3123726 /测试/对myApp /平台/安卓/科尔多瓦/建


    
    

[错误:未能找到'ANDROID_HOME环境变量。尝试设置手动设置它。


    
    

无法找到你的'PATH''机器人'命令。尝试更新您的路径,包括路径有效的SDK目录。]


    
    

ERROR建设的平台之一:错误:/家庭/ user3123726 /测试/对myApp /平台/安卓/科尔多瓦/编译:命令失败,退出code 2


    
    

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


    
    

错误:/家庭/ user3123726 /测试/对myApp /平台/安卓/科尔多瓦/编译:命令失败,退出code 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(内部/ child_process.js:818:16)


    
    

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


  

解决方案

固定的:

当时权限问题

 须藤CHOWN -R $(WHOAMI)/home/user3123726/.cordova

给科尔多瓦权

和没

离子加入Android平台

离子构建Android

没有sudo;)

I'm trying to build a default example app on Linux/Ubuntu 14.04 for Android.

I get a standard error message when doing sudo ionic build android:

Failed to find 'ANDROID_HOME' environment variable. Try setting setting it manually.

(see full log down below)

But if I do

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

/home/user3123726/Android/Sdk

/usr/lib/jvm/java-8-oracle

/usr/bin/ant

And command android and cordova are also available.

  • Android SDK is installed with all platform targets currently available (plus Android SDK Tools,Platform-Tools and Build tools)
  • npm 3.3.9 and Node 4.2.2 is installed
  • Cordova 5.3.3 was installed via npm
  • Ionic 1.7.7 was installed via npm
  • Apache Ant 1.9.3

ANDROID_HOME also defined on .bashrc:

export ANDROID_HOME=/home/user3123726/Android/Sdk

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

I have no idea what is the reason that the build process fails. Any help is appreciated - thanks!

Here full log of ionic project creation (basically create,add platform and build):

ionic start myApp tabs

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

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

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

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

Updated the hooks directory to have execute permissions Update Config.xml Initializing cordova project

Your Ionic project is ready to go! Some quick tips: [... shortened]

cd myApp

sudo ionic platform add android

Updated the hooks directory to have execute permissions

Downloading Default Ionic Resources

Downloading: https://github.com/driftyco/ionic-default-resources/archive/master.zip

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

Done adding default Ionic resources

Adding icons for platform: android

Adding android project...

Creating Cordova project for the Android platform:

Path: platforms/android

Package: com.ionicframework.myapp809922

Name: myApp

Activity: MainActivity

Android target: android-22

Copying template files...

Android project created with cordova-android@4.1.1

Running command: /home/user3123726/testing/myApp/hooks/after_prepare/010_add_platform_class.js /home/user3123726/testing/myApp

add to body class: platform-android

Saving platform to package.json file

sudo ionic build android

Running command: /home/user3123726/testing/myApp/hooks/after_prepare/010_add_platform_class.js /home/user3123726/testing/myApp

add to body class: platform-android

Running command: /home/user3123726/testing/myApp/platforms/android/cordova/build

[Error: Failed to find 'ANDROID_HOME' environment variable. Try setting setting it manually.

Failed to find 'android' command in your 'PATH'. Try update your 'PATH' to include path to valid SDK directory.]

ERROR building one of the platforms: Error: /home/user3123726/testing/myApp/platforms/android/cordova/build: Command failed with exit code 2

You may not have the required environment or OS to build this project

Error: /home/user3123726/testing/myApp/platforms/android/cordova/build: Command failed with exit code 2

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

at emitTwo (events.js:87:13)

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

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

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

解决方案

Fixed it:

Was a permission problem

sudo chown -R $(whoami) /home/user3123726/.cordova

to give cordova the rights

and did

ionic add platform android

ionic build android

without sudo ;)

这篇关于大厦离子应用为Android在Linux上失败,退出code 2:无法找到'ANDROID_HOME“的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆