NodeJSのコマンドプロンプトでnpm install
を使うことはできません。 npm install
を実行するとこれらのエラーが発生します。
module.js:339
throw err;
^
Error: Cannot find module 'semver'
at Function.Module._resolveFilename (module.js:337:15)
at Function.Module._load (module.js:287:25)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at Object.<anonymous> (C:\Users\admin\AppData\Roaming\npm\node_modules\npm\l
ib\config\defaults.js:6:14)
at Module._compile (module.js:435:26)
at Object.Module._extensions..js (module.js:442:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
at Module.require (module.js:366:17)
私を助けてください
同じエラーが発生しました。 npm uninstall npm -g
、rm -rf node_modules
は助けにはなりませんでした。試したときにError: Cannot find module 'semver'
を取得していたからです。しかし、私はこれらの手順で問題を解決します(これにより、使用している他のグローバルモジュールが削除されます)。
Sudo rm -rf /usr/local/lib/node_modules
Sudo rm -rf ~/.npm
brew uninstall --force node
brew install node
これが同様の問題を抱えている人たちを助けることを願っています。
私はここで同じ問題に直面しています。
brew install yarn
を実行した直後にこの問題が発生した場合は、yarn global add npm
を実行してみてください。
MS Windowsでは、解決策は%APPDATA%\npm
を削除して再インストールすることです node
昨日brew install yarn
を実行した後、私もこれを持っていました。少なくとも、それまではすべてうまくいっていました。
rm -rf node_modules
を実行して再インストールしようとしましたが、npm
コマンドが機能していませんでした。
結局、私はMac OS X用の公式Nodeインストーラーを介してNodeを再インストールするというかなり簡単なステップを踏みました。
https://nodejs.org/ja/download/
今はすべて問題ありません。ディレクトリに戻ってnpm install
を実行するだけで、うまくいきます。
Arch Linux上トリックをしたのは:
Sudo pacman -Rs npm
Sudo pacman -S npm
Arch Linux 4.13.3でこれに遭遇したばかりなので、semver
を再インストールすることで問題を解決しました。
pacman -S semver
実際には、以前に保存されたモジュールの参照を取っています。
解決策:nodejsのインストールディレクトリにあるnpm-cache/npmフォルダを削除します。 Windowsでは、C:/ User/Username/Appdata/Roaming/npm(またはnpm_cache)にあります。もう一度インストールしてみてください。
どのOSでも同じことができます。
Windowsでは、 NodeのMSI を再度ダウンロードして 'Repair'を実行するとうまくいきました。
より低いバージョンのノードを使用してnpm install
を実行したときにこの問題に直面しました。その後、私が最新版のnodeにアップグレードしてgulp
を実行したときに、このエラーが発生しました。
解決するには、node_modulesを削除し、npm install
を再実行しました。それからgulp
はうまく走りました。
私は同じ問題を抱えていましたが、それは壊れたpackage-lock.json
ファイルによって引き起こされました。
package-lock.json
を削除してnpm install
を実行すると、それも修正されました。
私はついにこれを考え出した!はい、すべてのファイルをアンインストール/削除してから再インストールする必要があります。しかし、ファイルパスの中には、アンインストール処理中に削除するには長すぎるものがあります。ファイルパスがNode内で非常に長いため、削除できない可能性があります。ファイルパスの名前を変更する必要があります。
ノードをアンインストールした後、コマンドプロンプトを使用し、...\Appdata\roaming \に移動します(エラーメッセージのパスを使用します)。 del npmでフォルダを削除してみてください。その後、フォルダを削除できない場合は、次のエラーメッセージでファイルパス内のフォルダの名前を "a"または短い名前に変更します。パスに沿って複数のフォルダに対してこれを行う必要があります。それからあなたは削除することができるはずです!それからノードを再インストールすればそれははたらくはずです。
/ node_modulesフォルダーを削除してやり直してください。 ;)
削除するにはnpm rm
を使います。
GitHubで this issue をチェックすることもできます。 unnistalについてより具体的にするには、 this に従うようにしてください。
アンインストール
あなたが行くのを見てとても悲しい。
Sudo
npm uninstall npm -g
または、それが失敗した場合、Sudo make uninstallもっと深刻なアンインストール
通常、上記の指示で十分です。それはnpmを削除しますが、あなたがインストールしたものは何でも残します。
インストールしたすべてのパッケージを削除したい場合は、npm lsコマンドを使用してそれらを検索し、次にnpm rmを使用してそれらを削除できます。
Npm 0.xによって取り残された残りの部分を削除するには、含まれているclean-old.shスクリプトファイルを使用できます。あなたはこのように便利にそれを走らせることができます:
npm explore npm -g -sh scripts/clean-old.sh npmは2つの設定ファイルを使用します。1つはユーザーごとの設定用、もう1つはグローバルな(ユーザーごとの)設定用です。あなたはそれらを見ることができます:
npm config get userconfig#のデフォルトは〜/ .npmrcです。npm config get globalconfig#のデフォルトは/ usr/local/etc/npmrcです。npmをアンインストールしても、デフォルトで設定ファイルは削除されません。削除したい場合は手動で自分で削除する必要があります。これは将来のnpmインストールがあなたが選んだ設定を記憶しないことを意味することに注意してください。
より高いバージョンのcliでプロジェクトを実行している間、私はこの問題に直面しました。この問題を解決するためには、@ angular-devkit/build-angularモジュールを単にコメントアウトすることができます。
npm install @ angular-devkit/build-angular --save
AWS Linuxへのインストールでも同じ問題がありました。私はSudo
を使ってインストールしなければなりませんでした。そのため、これを回避するために、この記事のステップ3に従いました(必ず最新バージョンのノードを入手するようにしてください)。
https://www.hostingadvice.com/how-to/update-node-js-latest-version/
wget https://nodejs.org/dist/vx.x.x/node-vx.x.x-linux-x64.tar.xz
tar -C /home/aUser/node --strip-components 1 -xJf node-vx.x.x-linux.x64.tar.xz
しかし、それをユーザーのホームディレクトリ/home/aUser/node
にインストールしました。それから私のパスにそのパスを追加しました。
export PATH=/home/aUser/node/bin:$PATH
その後、私は何の問題もなくnpm install
を実行することができました。
私の場合、macOS(10.13.6)で次のコマンドを実行したとき
npm install -g react-native-cli
このエラーが出ました
Error: Cannot find module 'semver'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
at Function.Module._load (internal/modules/cjs/loader.js:562:25)
at Module.require (internal/modules/cjs/loader.js:690:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/unsupported.js:2:14)
at Module._compile (internal/modules/cjs/loader.js:776:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
コマンドの実行後にエラーが解決されました
yarn global add npm
@Ashoorによって提案された
私の場合は、brew install yarn
を再実行するだけで問題が解決しました。
semver
がインストールされていることを確認してください。npm install -g semver
醸造所が私のMacOs Sierra 10.12.6に糸を取り付けた後、私は同じ問題に直面しました。 (そして、インストールの最初の試みは、「HomebrewはRuby 2.3で実行しなければなりません!(RuntimeError)」というメッセージが表示された後にselfを更新した後、再実行します。)
だから私はnpmを再インストールするのにnマネージャを使う。
念のため、ノードがSudoの下にインストールされたことが原因で問題が発生していると思います。
Macユーザーのために、私はたくさんの新しいノードバージョンをインストールして、異なるものをアンインストールしようとしました。それでも直らなかった。あなたは最初にあなたのすべてのインストールを完全に一掃しなければなりません。次の手順に従ってください。 Node.jsを完全にアンインストールし、最初から再インストールするにはどうすればいいですか(Mac OS X) 。
それからノードの最新バージョンをダウンロードしてください。