我已经在 bash_profile
中为我的 jenkins 用户设置了 $ANDROID_HOME
和 $PATH
(在我的例子中是管理员用户),我可以看到 env
当我这样做时 var 获取值
echo $ANDROID_HOME
echo $PATH
但是当我这样做的时候
sudo cordova build android
它给了我错误
CordovaError: Failed to find 'ANDROID_HOME' environment variable.Try setting it manually. Try update your 'PATH'
知道为什么以及如何修复它吗?
最佳答案
当您使用 sudo
运行命令时,该命令不会从父(非特权)shell 继承环境变量。出于安全原因。
解决方案:
使用
sudo bash
启动 root shell。然后设置环境变量并在 root shell 中运行构建命令。使用
sudo -E ...
或sudo --preserve-env=...
但请阅读手册条目,因为这是有风险的。不要尝试以 root 身份运行 cordova。 (你为什么这样做?这似乎有风险。你能确定你的构建没有错误,如果以 root 身份运行可能会损坏你的系统吗?你能相信构建“脚本”的来源吗?)
关于android - Cordova 错误 : Failed to find 'ANDROID_HOME' environment variable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49030143/