mac运行vue脚手架项目报错:Error: EACCES: permission denied, mkdir

项目场景:

近期在macos开发环境下使用npm,经常会出现无法mkdir,permission denied的问题,在windows下并没有遇到这种情况。


问题描述

在mac环境下运行vue项目:

命令:npm run serve

报错:Syntax Error: Error: EACCES: permission denied, mkdir '/Users/tianhongbin/Desktop/hello/demo/node_modules/.cache'

 截图:

mac运行vue脚手架项目报错:Error: EACCES: permission denied, mkdir_第1张图片


原因分析:

1.macos是基于Linux的,所以本身sudo就是Linux下的指令,sudo命令以系统管理者的身份执行指令,依次,通过sudo所执行的指令就好像是root亲自执行。

2.当前用户对node——modules目录没有读写权限


解决方案:

方案1:命令:sudo+原来的命令

例如:运行vue脚手架项目:

命令:

  • sudo npm run serve

方案2:为当前账户添加node_modules目录读写权限即可。

命令:

  • sudo chown -R $(whoami) ~/.npm

方案3:使用手动方法添加权限:

步骤:

  1. 点开mac的偏好设置
  2. 点击安全性与隐私
  3. 找到完全磁盘访问权限
  4. 为你的软件添加权限

如图所示:

mac运行vue脚手架项目报错:Error: EACCES: permission denied, mkdir_第2张图片

mac运行vue脚手架项目报错:Error: EACCES: permission denied, mkdir_第3张图片

你可能感兴趣的:(开发,vue.js,前端,macos)