错误的ERR!拒绝删除/编码EEXIST

时间:2017-10-03 09:30:07

标签: node.js npm

我正在运行一个简单的npm install,我收到此错误。

npm ERR! path /Users/jasonazoulay/Desktop/fabrick.io/delegation/node_modules/@angular/cli/node_modules/webpack/node_modules/yargs/node_modules/os-locale/node_modules/execa/node_modules/cross-spawn/node_modules/.bin/which
npm ERR! code EEXIST
npm ERR! Refusing to delete /Users/jasonazoulay/Desktop/fabrick.io/delegation/node_modules/@angular/cli/node_modules/webpack/node_modules/yargs/node_modules/os-locale/node_modules/execa/node_modules/cross-spawn/node_modules/.bin/which: is outside /Users/jasonazoulay/Desktop/fabrick.io/delegation/node_modules/@angular/cli/node_modules/webpack/node_modules/yargs/node_modules/os-locale/node_modules/execa/node_modules/cross-spawn/node_modules/which and not a link
npm ERR! File exists: /Users/jasonazoulay/Desktop/fabrick.io/delegation/node_modules/@angular/cli/node_modules/webpack/node_modules/yargs/node_modules/os-locale/node_modules/execa/node_modules/cross-spawn/node_modules/.bin/which
npm ERR! Move it away, and try again

这是我第一次收到此错误,而且我不知道该怎么做。

13 个答案:

答案 0 :(得分:40)

完全删除node_modules目录,然后再次运行npm install

答案 1 :(得分:10)

这就是我“围棋”后解决我的问题的方式。

  • 导航到您的节点安装目录
  • 重命名您的npm.cmdnpm文件
  • 尝试再次运行安装
  • 如果成功,请删除您先前重命名的文件npmnpm.cmd
  • 如果不是,:(:(

此处的cli命令...如果您不想重命名和填充

cd %ProgramFiles%\nodejs
ren npm.cmd npm2.cmd
ren npm npm2 
npm2 install npm@latest -g

del npm2
del npm2.cmd

Rolf-schmidiger

答案 2 :(得分:4)

尝试运行npm update -g npm,然后再次运行npm i 如果这不起作用,npm cache clean可能有帮助。

如果这不起作用,您应该考虑删除应用程序中的node_modules文件夹并再次运行npm i
如果您仍然没有运气,我建议您在运行package-lock.json之前删除node_modulesnpm i文件夹。

答案 3 :(得分:3)

我在Linux上遇到了这个问题(npm是当前最新的5.6.0),因为我创建了一个tgz存档,我需要在创建tgz存档时引用一些符号链接(参见man tar)(这是他们复制到VM进行测试)。这样,node_modules/.bin中的许多符号链接也成为常规文件。 npm在错误消息中说,.e.g。

  

npm ERR!拒绝删除/path/to/node_modules/.bin/jest:在/ path / to / node_modules / jest之外,而不是链接

答案 4 :(得分:2)

  1. 从控制面板中卸载node.js
  2. 删除文件夹以下
C:\Program Files (x86)\Nodejs
C:\Program Files\Nodejs
C:\Users\{User}\AppData\Roaming\npm (or %appdata%\npm)
C:\Users\{User}\AppData\Roaming\npm-cache (or %appdata%\npm-cache)
C:\Users\{User}\.npmrc (and possibly check for that without the . prefix too)
C:\Users\{User}\AppData\Local\Temp\npm-*
  1. 再次安装node.js

答案 5 :(得分:1)

我遇到了类似的错误(我的不是@angular),
通过删除并使用安装程序重新安装节点来解决。

答案 6 :(得分:1)

我遇到了同样的问题,原来的问题是,在我尝试进行安装的同时,npm的一个杂散实例正在后台某处运行(这是Webpack的{{1} },确切地说。

停止正在运行的实例可以解决该问题。

答案 7 :(得分:1)

我有一个类似的问题,似乎有效的方法是卸载npm并重新安装它,并确保以正确的用户身份登录进行重新安装。我想我以前以root用户身份安装过npm,但是正在以常规(sudo)用户身份更新软件包。

答案 8 :(得分:1)

在虚拟的加密磁盘上工作时遇到了这个问题。 将项目移动到常规磁盘即可解决此问题。

答案 9 :(得分:1)

我遇到了同样的错误,但是当我尝试将模块“ cordova”更新到版本9时,我通过用--force强制安装来修复了它。我使用的npm命令:

npm i -g --force cordova@9 

答案 10 :(得分:1)

这对我有用

npm install -g --force gatsby-cli

谢谢

答案 11 :(得分:1)

对于Windows用户(特定于Windows 10),这必须解决该问题。

转到此文件夹:

C:\Users\[UserName]\AppData\Roaming\

删除或重命名npmnpm-cache文件夹。

这已解决了我在Windows中的问题。

答案 12 :(得分:1)

我遇到了类似的问题,但因为最初项目是使用“yarn install”安装的,然后当我尝试使用“npm install”安装依赖项时,我发现了同样的错误。所以确保只使用一个:yarn 或 npm .. 我用“yarn add

添加了我的依赖项来修复它