web-dev-qa-db-ja.com

npmパッケージ「npm ERR!errno -4048」のインストールに失敗しました

Npmパッケージ(node-xmpp-server)をインストールしようとしていますが、インストールに失敗します。以前は、ローカルではなくグローバルにインストールされるパッケージをインストールしようとしていましたが、現在はまったくインストールされていません。
Plz助けて。

npm install node-xmpp-server
エラー:npm ERR! errno -4048
npm ERR! Windows_NT 6.3.9600
npm ERR! argv "c:\ Program Files\nodejs\node.exe" "c:\ Program
Files\nodejs\node_modules\npm\bin\npm-cli.js "" install "" node-xmpp-server "

npm ERR!ノードv0.12.4
npm ERR! npm v2.10.1
npm ERR!パスc:\ Users\Jaseem Abbas\Documents\node_modules\node- xmpp-server\examples
npm ERR!コードEPERM
npm ERR! errno -4048
npm ERR!エラー:EPERM、「c:\ Users\Jaseem Abbas\Documents\node_modules\node-xmpp-server\examples」のリンクを解除します

npm ERR!エラー時(ネイティブ)
npm ERR! {[エラー:EPERM、 'c:\ Users\Jaseem Abbas\Documents\node_modules\node-xmpp-server\examples'のリンクを解除します]

npm ERR! errno:-4048、
npm ERR!コード:「EPERM」、
npm ERR!パス: 'c:\ Users\Jaseem Abbas\Documents\node_modules\node-xmpp-server\examples'} npm ERR!
npm ERR! root /管理者としてこのコマンドを再度実行してください。
npm ERR!エラーのロールバックエラー:EPERM、リンク解除 'c:\ Users\Jaseem Abbas\Documents\node_modules\node-xmpp-server\examples'

npm ERR!エラーでロールバックするエラー(ネイティブ)
npm ERR!ロールバックエラー{[エラー:EPERM、リンク解除 'c:\ Users\Jaseem
Abbas\Documents\node_modules\node-xmpp-server\examples ']
npm ERR! errnoのロールバックエラー:-4048、
npm ERR!エラーロールバックコード:「EPERM」、
npm ERR!パスのロールバックエラー: 'c:\ Users\Jaseem Abbas\Documents\node_modules\node-xmpp-server\examples'}

32
Vishnu Mishra

ファイルをロックしているプロセスを強制終了する

この種のエラーは、ファイルのアクセス許可のロックが原因で発生するようです-whatwg-fetch

同時に開いていたVisual Studioインスタンスが、必要のないあらゆる種類のファイルを取得していることがわかりました。それを閉じたら、インストールは完全に機能しました。

これは、より徹底的な対策に進む前に、すぐに確認できる原因である可能性があります...

75
Oly

それでもこのエラーで問題が発生し、ノードバージョンを5.4にアップグレードする場合は、...そのバージョンではエラーが発生します。 ここ ダウングレードノードバージョンで基本的に構成されるソリューション

Windowsの場合:

npm install -g [email protected]

それは私のために働いています。

私は同じ問題を抱えていて、次の解決策を見つけました:

  1. 両方を削除する

    • %ProgramFiles%\ nodejs\npm
    • %ProgramFiles%\ nodejs\npm.cmd
  2. %ProgramFiles%\ nodejs\node_modules\npmに移動し、npmrcという名前のファイルを新しいnpmフォルダーにコピーします。これは%appdata%\ npm\node_modules\npmになります。これにより、グローバルにインストールされたパッケージの場所が新しいnpmに通知されます。

  3. Windowsを再起動すると動作しました。

これは here (npmトラブルシューティングセクション)で見つかりました。そこの著者へのクレジット

10
Jan_dh

このエラーは複数の理由で発生する可能性があるため、すべてのユーザーに有効な単一の修正はおそらくないでしょう。

ただし、同時インストールの問題がインストールの失敗の原因であることがよくあります。これまでに180件近くのコメントを受け取った関連するnpm issueスレッドの1つに蓄積された知恵によれば、 根本的な問題は

ハードディスク上の同じファイルにアクセスする非同期I/O操作間の競合状態。ハードディスクをクリーンアップすることで確実に影響を与えることができます。 「npm cache verify」を使用するか、プロジェクトをSSDに移動しますが、これは問題の根本原因を解決しません。

同様に、IDEを閉じるか、ウィルススキャナを無効にすることは、一部の人にとっては機能する場合がありますが、同時実行の問題が背後にある場合、問題を実際に修正しません。

パッチはnpm 5.6.0で公開されました。最初の報告によると、それはトリックをしているようです。あなたのnpm --versionの方が低く、5.6.0に更新します(または、これを読んだときの現在のバージョンは何でも)。

npm uninstall -g npm
npm install -g [email protected]

ここで推奨

それでも解決しない場合は、おそらくファイルロック真の原因です。 @Olyが 上記 と言っているように、IDEを閉じるか、ウイルススキャナーを一時的に無効にするか、または同様のアクションを実行する方法が実際にあります。

2
hashchange

Npmを5.4.2にアップグレードすると、この問題が修正されます。

インストールするコマンド:npm i -g [email protected]またはnpm i -g npm

それでも動作しない場合は、npm cache cleanを使用してキャッシュをクリアしてください

このような強制を使用できますnpm cache clean --force

1

私にとっては、@ Olyのソリューションは機能しました。Angularそれがng serve -oファイルをロックしていた。うん-実行しないnpm install while ng serveはプロジェクトで実行されています。

1
sashoalm

同じ問題を抱えていたビジュアルスタジオを閉じると問題が解決しました

1

誰かがそれがnpmのバグによると言った https://github.com/npm/npm/issues/9696

「--force」を追加してインストールすると、問題が回避されると言われています。

1
Peter Kahn

Node.jsをセットアップした後、unixを対象としたガイドの一部に従い、現在の作業ディレクトリを新しいフォルダーに移動することになりましたが、.npmrcファイルを古い場所から新しい場所にコピーするのを忘れました1。また、npm config ls -lを使用して現在の設定をデフォルトと比較することにより、プレフィックスの場所を%AppData%から変更しました。ここでの2つの手がかりは、別の場所にある.npmrcファイルを指すuserconfigという行が先頭にあり、私の接頭辞がデフォルト値から上書きされたことです。これをデフォルトに戻すと、問題が修正されました。

これらをデフォルトにリセットして、構成設定を確認してください。古い設定を参照している場合、node.jsを再インストールしても問題が解決するかどうかはわかりません。

0

これはnpmの長年の問題であり、修正には関心がないようです。他の人が言及しているさまざまなものが時々機能します(たとえば、実行中のプログラムを閉じる、バージョンをダウングレードするなど)。これは一般にWindowsのインストールに限定されていますが、最近Linuxでも少し発生しました。

0
sovemp
np init

これにより、ダミーのpackage.jsonが作成されます。ファイルを開き、必要な依存関係リストを入力します。

今すぐ行く:

npm i

これで問題は解決しました。

0
Ashish

私は次の解決策を試してみましたが、どちらがうまくいったのかわかりません。

  • コマンドプロンプトで管理者としてリアクティブネイティブのinitを実行しました(Windows OSの場合)、Mac OSのSudoのリアクティブネイティブのinitでうまく機能することを期待しています
  • コマンドプロンプトでnpm cache cleanコマンドを実行しました。
  • しばらくの間、ウイルス対策を無効にします。

いずれかのソリューションまたはすべてを試してください、

0
Cool7

Package-lock.jsonを削除します

そしてさらに試みる

0
user1688136