npm ERR!EEXISTの削除/コーディングの拒否


93

単純なもの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

このエラーが発生するのはこれが初めてで、どうすればよいかわかりません。


あなたも走ってみましたsudo npm installか?
antzshrek 2017年

はい、同じことをしました
Azoulay Jason 2017

1
また、Googleファイルストリームと同期されているフォルダーでプロジェクトをホストしているときにも、この問題が発生しました。プロジェクトを「ローカルディスク」に移動した後、実行できましたnpm install
Trevor

回答:


147

ステップ

  1. node_modulesディレクトリを完全に削除します。
  2. npm installもう一度実行します。

これは役立つはずです。


これを行った後、npm-cli.jsがないため、インストールに失敗しました。私はNPXファイルを削除するとともに、以下のリネーム・ソリューションをやってしまった
デビッドブラッドリー

これは機能しますが、削除とインストールには長い時間がかかります。このソリューションは最適ではありません。
jasie

1
「モジュールC:\ Program Files \ nodejs \ node_modules \ npm \ bin \ npm-cli.jsが見つかりません」
DavidKlempfner20年

1
この他のSOの回答をチェックすることをお勧めします@DavidKlempfner stackoverflow.com/questions/24721903/...
antzshrek

28

これは私が「グーグル」した後に私の解決方法でした...

  • ノードがインストールされたディレクトリに移動します
  • ファイルの名前を変更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


4
この答えは私にとってはうまくいきましたが、npx.cmdとnpxの名前をnpx2.cmdとnpx2に変更する必要もありました。また、管理者として端末を実行する必要がありました。
raphadko

4
これは私にとってもうまくいきました。npxとnpx.cmd、およびnpmとnpm.cmdの名前を変更する必要がありました。次に、「npm_ update -g npm」を​​実行すると、機能しました。おそらくそれは、インストーラーを介してnodejsをインストールせず、代わりにzipファイルから抽出したという事実と関係がありました。
イゴール

1
またnpx.cmd名前を変更する必要がある
レザ・

1
動作するファイルの名前を変更する代わりに、npxファイルを削除しました。新しいファイルが作成されました。
デビッドブラッドリー

2
これは私にとってもうまくいきました。@DavidKlempfnerは、名前が変更されたので、npm2を使用してコマンドを実行します。その後、 `... \ npm \ node_modules * \ node_modules \ .bin *の削除を拒否するという問題が発生しました。文句を言うたびに(2回または3回など)手動で.binフォルダーを削除しましたが、機能しました。
ZakkDiaz20年

7

実行してからnpm update -g npm、もう一度実行してくださいnpm i
それがうまくいかない場合は、おそらくnpm cache clean役立つでしょう。

それでも問題が解決しない場合node_modulesは、アプリケーションのフォルダーを削除してnpm i再度実行することを検討してください。
それでもうまくいかない場合は、を実行する前にpackage-lock.jsonnode_modulesフォルダを削除することをお勧めしますnpm i


2
@AzoulayJason私はちょうど気づきました。Angular CLIの最新バージョンを使用している場合は、のyarn代わりに使用することを強くお勧めしますnpm i。最新バージョンには、npmに関連するある種のバグがあります。それが役に立てば幸い!
OArnarsson 2017年

npm @ 5の時点で、npmキャッシュは破損の問題から自己回復し、キャッシュから抽出されたデータは有効であることが保証されています。すべての一貫性を確認したい場合は、代わりに「npmcacheverify」を使用してください。
ルアン

4

Linux(npmは最新の5.6.0)でこの問題が発生しました。これは、tgzアーカイブを作成したためman tar、tgzアーカイブ(テストのためにVMにコピーされたもの)を作成するときにいくつかのシンボリックリンク(を参照)を逆参照する必要があったためです。 )。このようにして、の多くのシンボリックリンクnode_modules/.binも通常のファイルになりました。npmはエラーメッセージで言います、.eg

npm ERR!/path/to/node_modules/.bin/jestの削除を拒否:/ path / to / node_modules / jestの外部にあり、リンクではありません


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を再度インストールします

1

同様のエラーが発生しました(私のものは@angularではありません)
。インストーラーでノードを削除して再インストールすることで解決しました。


1

私は同じ問題を抱えていましたが、問題はnpm、インストールを実行しようとしたときに、の漂遊インスタンスがバックグラウンドのどこかで実行されていたということでした(Webpackのnpm run serve正確に)。

実行中のインスタンスを停止すると、問題は解決しました。


1

同様の問題が発生しましたが、npmをアンインストールして再インストールし、再インストールの正しいユーザーとしてログインしていることを確認してください。以前はrootとしてnpmをインストールしたと思いますが、通常の(sudo)ユーザーとしてパッケージを更新していました。


1

仮想の暗号化されたディスクで作業しているときにこの問題が発生しました。プロジェクトを通常のディスクに移動すると、問題が解決しました。


1

同じエラーですが、モジュール「cordova」をバージョン9に更新しようとしたときに、を使用してインストールを強制することで修正しました--force。私が使用したnpmコマンド:

npm i -g --force cordova@9 

1

これは私のために働いた

npm install -g --force gatsby-cli

ありがとう


1

Windowsユーザー(Windows 10に固有)の場合、これで問題を解決する必要があります。

このフォルダに移動します:

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

削除したり、名前を変更npmし、npm-cacheフォルダのます。

これにより、Windowsでの問題が修正されました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.