2014-10-02 68 views
4

今天我开始phonegap,根据文档我试图设置我的环境到我的本地机器。获取错误,同时为手机添加android平台

在这个过程中,我安装了android SDK并在bashrc文件中设置了环境变量。

PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting 
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 
export JAVA_HOME 
PATH=$PATH:$JAVA_HOME 

ANDROID_HOME=$HOME/Git/adt-bundle-linux/sdk 
export ANDROID_HOME 
PATH=$PATH:$ANDROID_HOME 

ANDROID_PLATFORM_TOOLS=$ANDROID_HOME/platform-tools 
export ANDROID_PLATFORM_TOOLS 
PATH=$PATH:$ANDROID_PLATFORM_TOOLS 

ANDROID_TOOLS=$ANDROID_HOME/tools 
export ANDROID_TOOLS 
PATH=$PATH:$ANDROID_TOOLS 
export PATH 

ANT_HOME=/usr/share/ant 
export ANT_HOME 
PATH=$PATH:$ANT_HOME/bin 

我切换到我的工作主任,收到以下错误后跑cordova platform add android

Creating android project... 

/home/.cordova/lib/npm_cache/cordova-  
android/3.6.3/package/bin/node_modules/q/q.js:126 
       throw e; 
        ^
Error: Failed to run "javac -version", make sure you have a Java JDK (not just a JRE) installed. 
at /home/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/lib/check_reqs.js:43:27 
at ChildProcess.exithandler (child_process.js:651:7) 
at ChildProcess.EventEmitter.emit (events.js:98:17) 
at maybeClose (child_process.js:753:16) 
at Process.ChildProcess._handle.onexit (child_process.js:820:5) 
Error: /home/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/create: Command failed with exit code 8 
at ChildProcess.whenDone (/usr/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:135:23) 
at ChildProcess.EventEmitter.emit (events.js:98:17) 
at maybeClose (child_process.js:753:16) 
at Process.ChildProcess._handle.onexit (child_process.js:820:5) 
@barrett:~/Git/phonegap/hellowPhonegap$ 

同样的命令“命令”跑起来像sudo cordova platform add android,抛出下面的错误。

/home/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:126 
       throw e; 
        ^
Error: ANDROID_HOME is not set and "android" command not in your PATH. You must fulfill at least one of these conditions. 
at /home/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/lib/check_reqs.js:158:19 
at _fulfilled (/home/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:798:54) 
at self.promiseDispatch.done (/home/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:827:30) 
at Promise.promise.promiseDispatch (/home/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:760:13) 
at /home/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:821:14 
at flush (/home/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:108:17) 
at process._tickCallback (node.js:419:13) 
at Function.Module.runMain (module.js:499:11) 
at startup (node.js:119:16) 
at node.js:906:3 
Error: /home/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/create: Command failed with exit code 8 
at ChildProcess.whenDone (/usr/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:135:23) 
at ChildProcess.EventEmitter.emit (events.js:98:17) 
at maybeClose (child_process.js:753:16) 
at Process.ChildProcess._handle.onexit (child_process.js:820:5) 

我以后应该使用哪个命令。如果其中之一,有什么问题。

任何人都可以帮助我。

+0

我有同样的问题(但在Windows)。有没有运气? – inblueswithu 2014-10-12 01:34:29

+0

按照这里给出的步骤http://goo.gl/r9lJnx – 2015-02-11 10:27:34

回答

0

我有同样的问题 添加到您的路径。在Windows中,我没有这样的path=%path%;%android_home%/platform-tools

+0

我不认为OP使用Windows来简单看一下这个问题,我也可以看到你建议的路径已经添加到路径变量中。 – arco444 2014-10-09 14:08:05

+0

还有一件事,我在波斯时,我使用不同的语言(本地语言,例如تقویم)创建应用程序时,我想添加平台它显示此错误。但在创建英文名称(例如日历)的同时,它会创建并添加每个平台 – Parsaria 2014-10-09 15:28:37

2

我面临同样的问题,让我们做到这一点javac -version则显示可用的版本一样

The program 'javac' can be found in the following packages: 
* default-jdk 
* ecj 
* gcj-4.8-jdk 
* openjdk-7-jdk 
* gcj-4.6-jdk 
* openjdk-6-jdk 
Try: sudo apt-get install <selected package> 

休耕地。 我希望这可以帮助你。

0

添加路径ANDROID_HOME这样的检查后

export ANDROID_HOME='your path'

echo $ANDROID_HOME

0

发生了什么事我是路径,我拥有E安装的openjr,但javac的实际上是部分openjd k。希望这可以帮助某人。