The operation was rejected by your operating system

今天使用node.js打包vue的时候报了这个问题

npm ERR! code EPERM
npm ERR! syscall unlink
npm ERR! path D:\pbs_workspace\web-vue\node_modules\.staging\echarts-2a49d5e4\dist\echarts.js.map
npm ERR! errno -4048
npm ERR! Error: EPERM: operation not permitted, unlink 'D:\pbs_workspace\web-vue\node_modules\.staging\echarts-2a49d5e4\dist\echarts.js.map'
npm ERR!  [OperationalError: EPERM: operation not permitted, unlink 'D:\pbs_workspace\web-vue\node_modules\.staging\echarts-2a49d5e4\dist\echarts.js.map'] {
npm ERR!   cause: [Error: EPERM: operation not permitted, unlink 'D:\pbs_workspace\web-vue\node_modules\.staging\echarts-2a49d5e4\dist\echarts.js.map'] {
npm ERR!     errno: -4048,
npm ERR!     code: 'EPERM',
npm ERR!     syscall: 'unlink',
npm ERR!     path: 'D:\\pbs_workspace\\web-vue\\node_modules\\.staging\\echarts-2a49d5e4\\dist\\echarts.js.map'        
npm ERR!   },
npm ERR!   stack: "Error: EPERM: operation not permitted, unlink 'D:\\pbs_workspace\\web-vue\\node_modules\\.staging\\echarts-2a49d5e4\\dist\\echarts.js.map'",
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'unlink',
npm ERR!   path: 'D:\\pbs_workspace\\web-vue\\node_modules\\.staging\\echarts-2a49d5e4\\dist\\echarts.js.map',
npm ERR!   parent: 'web-vue'
npm ERR! }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It's possible that the file was already in use (by a text editor or antivirus),
npm ERR! or that you lack permissions to access it.
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.

查阅百度后有提供解决方法如下:
需要删除npmrc文件。
强调:不是nodejs安装目录npm模块下的那个npmrc文件
而是在C:\Users{账户}\下的.npmrc文件

然后问题就又来了,那么这个.npmrc文件在哪里呢?
我就在此电脑中全文检索,查询了好长时间,结果还是一无所获,然后就查询关于.npmrc文件相关的
查询npmrc路径可输入一下命令

npm config ls -l 

在这里插入图片描述
然后我又到文件夹下找了一下,发现没有
就又运行了编辑的命令如果没有,那么编辑就为空,

npm config edit 

然后弹出文本文件,我查看文本文件目录地址,发现同上面一致
然后就又到c盘下的用户下的账号下查询,这次就有了,然后删除,文件再执行一下清楚缓存命令

npm cache clean --force

然后再打包

npm install

======================方法二

关闭ide程序,然后把node_modules里的所有文件删除,然后再npm install,如果还不行,可以把杀毒软件关闭

======================方法三
我们有时在git上拉取别人的package-lock.json文件后,直接npm install可能会安装报错,提示包破损之类,然后整个/node_modules/文件下的安装包会因为缺少包而安装失败。

1.清空npm代理

npm config rm proxy
npm config rm https-proxy

2.清空npm缓存

npm cache clean -f

3.删除package-lock.json后直接

npm install

4.删除用户目录下的.npmrc
只要你在npm命令行配置过参数,比如

npm config set registry https://registry.npm.taobao.org

就会在用户目录下生成该文件

都不好使。最后还是会出现包破损之类的安装不下去。其实都没有想到,最简单的方式就是找到破损的文件,单独安装

npm install **@X.Y.Y

发布了170 篇原创文章 · 获赞 13 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/G_whang/article/details/104248929