2015-09-06 94 views
5

不能建立科爾多瓦項目,PATH錯誤

[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/shakir/Documents/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/shakir/Documents/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 ChildProcess.EventEmitter.emit (events.js:98:17) at maybeClose (child_process.js:743:16) at Process.ChildProcess._handle.onexit (child_process.js:810:5)

我已經把我的~/.profile文件如下

export ANDROID_HOME="/usr/local/android-sdk-linux"

export ANDROID_PLATFORM_TOOLS="/usr/local/android-sdk-linux/platform-tools"

export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_PLATFORM_TOOLS

echo ANDROID_HOME給予以下結果

/usr/local/android-sdk-linux

我使用Ubuntu 14.04。如何解決這個問題,並建立科爾多瓦應用程序?

+0

確保你的shell可以找到並執行「android」和「adb」 – csantanapr

回答

10

發生此錯誤,因爲您沒有正確設置您的android sdk路徑。 首先,找到位於您的計算機中的android-sdk文件夾。在android-sdk文件夾中,有一個名爲「platform-tools」的文件夾。所以你可以正確識別android-sdk文件夾。然後獲取android-sdk文件夾的路徑。現在打開終端並輸入以下命令,

export ANDROID_HOME="your android-sdk path" 

現在運行該項目。

+0

這工作非常感謝:) –

+0

謝謝你soooo muchh !!!!!正是我需要做的。 – yanike

5

你可能已經用「命令」添加Android平臺..這個問題的快速解決方案是:

  1. 恢復正確的文件夾權限的平臺文件夾的所有文件夾/子文件夾

  2. 刪除Android平臺與sudo cordova platform remove android

  3. 加入Android平臺與cordova platform add android不要使用sudo!如果沒有sudo就有錯誤,那麼這就是問題所在!永遠不要使用sudo的東西,否則項目會有這樣的問題!

如果你仍然有問題,那麼你可能已經使用sudo安裝科爾多瓦,也有它的解決方案:
首先我們要建立NPM全球安裝的,所以我們可以使用它沒有sudo的,啓用npm來全局安裝軟件包而不會突破$ HOME的首選方法是設置一個本地節點前綴。這是跑步一樣容易:

echo prefix = ~/.node >> ~/.npmrc 
echo 'export PATH=$HOME/.node/bin:$PATH' >> ~/.bashrc 
. ~/.bashrc  

然後運行:

npm install -g cordova 

可能導致:

Error: EACCES, permission denied '/home/yourusername/.config/configstore/update-notifier-cordova.json' 

解決它:

sudo chown yourusername:yourusername /home/yourusername/.config/configstore/update-notifier-cordova.json 

之後,你可以愉快地運行npm install -g cordova沒有s udo,而不會遇到權限衝突,並且如果某些內容完全損壞,並且您想從頭開始,則只需刪除〜/ .node目錄即可。

希望得到這個幫助!

,你也可以看看這兩個環節:源1 & 2

+1

雖然這個鏈接可能回答這個問題,但最好在這裏包含答案的基本部分,並提供供參考的鏈接。如果鏈接頁面發生變化,僅鏈接答案可能會失效 – Dethariel

+0

這正是我所尋找的。 – TheJediCowboy

+0

我已按照您的建議更新了答案。謝謝@Dethariel :) – molhamaleh

-1

你也可能得到這個錯誤

Error: EACCES: permission denied, open '/home/yourusername/.cordova/lib/npm_cache/cordova-android/5.1.1/package/.npmignore' 

修復它使用此命令

sudo chown -R yourusername:yourusername /home/chandesh007/.cordova/lib/npm_cache/cordova-android/5.1.1/package 
相關問題