在本地安装browserify时,为什么需要管理员权限?
在我的本地broswerify
中将package.json
列为依赖关系时,简单的npm install
有时会产生EACCESS错误:
npm ERR! Error: EACCES, mkdir '/Users/user/.npm/browserify/8.1.3'
npm ERR! { [Error: EACCES, mkdir '/Users/user/.npm/browserify/8.1.3']
npm ERR! errno: 3,
npm ERR! code: 'EACCES',
npm ERR! path: '/Users/user/.npm/browserify/8.1.3',
npm ERR! parent: 'my-app' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
显然我可以使用sudo
来解决这个问题,但我为什么要这样做?
答案 0 :(得分:1)
在您使用sudo npm
安装内容的某些方面最有可能。你从不必须这样做。但是,一旦你完成了它,你可能不得不使用sudo npm cache clean
或sudo rm -rf /Users/user/.npm
来恢复正常状态,然后再继续前进。这完全是关于文件系统权限,并且没有直接使用npm或browserify。
根据您的评论中的详细信息,专门运行ls -ld /Users/user/.npm/browserify
,因为问题是当npm在其中尝试mkdir
时,意味着该目录可能无法写入user
。