在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/