2015-09-06 95 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 
相关问题