我尝试在Mac OS 10.12.5上执行sudo npm install -g appium
。
我收到此错误:
info Chromedriver安装安装Chromedriver版本' 2.30'对于平台' mac'和建筑' 64'
info Chromedriver安装打开临时文件将chromedriver_mac64写入...
错误:EACCES:权限被拒绝,mkdir
' /usr/local/lib/node_modules/appium/node_modules/appium-chromedriver/2017820-44752-12jfqpb.z2hd'
npm ERR!代码ELIFECYCLE
npm ERR!错误1
npm ERR! appium-chromedriver@3.0.1安装:
node install-npm.js
错误的ERR!退出状态1 错误的ERR!
这不是一个重复的问题,因为此安装尝试是使用sudo,而另一个则不是。
答案 0 :(得分:11)
sudo npm install -g appium --unsafe-perm = true --allow-root
为我工作
答案 1 :(得分:1)
您正在使用npm,因此您必须使用
sudo npm install --unsafe-perm
在不安全模式下,您运行的每个命令
希望会有所帮助
答案 2 :(得分:0)
我重新安装了Node / NPM。问题解决了。
答案 3 :(得分:0)
-g
选项表示全局安装。当软件包全局安装时,可能会发生 EACCES
权限错误。
考虑将 npm 设置为在没有提升权限的情况下全局运行。有关详细信息,请参阅 Resolving Permission Errors。
选项 1
避免权限问题的最佳方法是使用节点版本管理器重新安装 NodeJS 和 npm。
1.安装 nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
您可以关闭并重新打开终端,只需打开另一个终端并使用以下命令检查 nvm 是否已正确安装:command -v nvm
。
2.要下载并安装 NodeJS 的最新 LTS 版本,请运行:
nvm install --lts
3.将新安装的NodeJS设置为默认环境:
nvm alias default lts/*
选项 2(不适用于 windows)
将 npm 目录的所有者更改为当前用户:
sudo chown -R $(your_user) /usr/local/{lib/node_modules,bin,share}
sudo chown -R $(your_user) ~/.npm ~/.npmrc