mac中的npm权限问题

当我用create-react-app 初始化项目的时候老是报一个权限的错误

Error: EACCES: permission denied

下面介绍两种解决这个问题的方法:

1.修改npm默认目录的权限

1、找到npm的目录路径:
npm config get prefix

对于很多系统,路径将会是 /usr/local.

警告:如果出来的路径仅是 /usr,请调到方法2,否则你可能会设置错误。

2、将npm目录的拥有者修改为当前用户的名字(你账户的用户名):
sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}

这会改变npm及其他工具用到的子文件夹的权限(lib/node_modules, bin, and share)。

2.将npm默认目录定向到其他你具有读写权限的目录

很多时候你可能并不想改变npm所用的默认目录(如/usr)的拥有者,因为这可能会导致一些问题,比如你在与其他用户共用此系统时。
这时,你可以设置npm整个地去使用另一个目录。我将它设置为我的主文件夹下的一个隐藏的目录(command+shift+>可以查看隐藏文件和目录)。
1、创建一个目录用作全局安装:

mkdir ~/.npm-global

2、配置npm使用这个新目录:

npm config set prefix '~/.npm-global'

3、打开(没有就创建)一个“~/.profile”文件到你的全局目录下并添加下行代码(这一步不在命令行操作,而在你新创建的文件下添加):

export PATH=~/.npm-global/bin:$PATH

4、返回命令行,更新系统变量:

source ~/.profile
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值