分类
技术

Mac安装npm包权限问题

在Mac上执行yeoman命令时,yeoman会自动调用npm install,安装过程中报错:

npm ERR! Error: EACCES, mkdir '/usr/local/lib/node_modules/n'
npm ERR! { [Error: EACCES, mkdir '/usr/local/lib/node_modules/n']
npm ERR! errno: 3, npm ERR! code: 'EACCES', …
npm install -g — ERR! Please try running this command again as root/Administrator.

这时出于习惯直接用sudo来执行yeoman,结果还是一样的:

sudo yo

看来yeoman调用npm install时没有带上sudo。

解决方案简单粗暴,修改全局npm包目录的权限:

sudo chown -R $USER /usr/local/lib/node_modules

参考资料:https://ar.al/scribbles/npm-install-g-please-try-running-this-command-again-as-root-administrator/