2014-10-02 66 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。希望這可以幫助某人。