Npmインストールでモジュール「semver」が見つかりません


196

npm installNodeJSのコマンドプロンプトを使用できません。実行するとこれらのエラーが発生します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)

4
同じ問題が発生しましたまたは、npmの代わりに糸を使用することもできます
WojciechMaślanka16年

1
糸を使用してpackage.jsonをインストールしていますか?
anandharshan

1
npmを再インストールするだけ
Nuno Ferro

回答:


401

同じエラーが発生しました。npm uninstall npm -grm -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

これが同様の問題を抱えている人たちに役立つことを願っています。


3
El Capitanを実行する2つの異なるマシンでこれを使用して、どちらの場合でも機能しました。
Kamikaze Rusher 2016年

7
brew uninstall --force nodeすべてのバージョンを削除するために使用
deleze

5
もう一度npmをインストールしてください。curl -0 -L https://npmjs.org/install.sh | sudo shnpmフォルダを削除した後
バリヨンリー

17
Yarnがすでにインストールされている場合、インストールしなかっbrew uninstall --ignore-dependencies nodeた場所でbrew uninstall --force nodeも機能します。
Maxime Lafarie

13
コマンドを盲目的に貼り付けるのは私のせいですがsudo rm -rf /usr/local/lib/node_modules、gulpやseleniumサーバーなど、使用しているグローバルモジュールが失われました。このことにうんざりしてください
AmmarCSE 2017

84

ここでも同じ問題に直面しています。

これを実行した直後に発生した場合は、実行してbrew install yarn試してくださいyarn global add npm-修正しました!


2
この解決策は私にとってはうまくいき、ここでの選択肢よりもはるかにシンプルです。インストールがアップグレード/インストール中に権限/アクセスエラーを取得した場合、yarnはnpmを壊す可能性があると思います。
Slbox

52

MS Windowsでは、解決策は削除%APPDATA%\npmして再インストールすることですnode


私はこの投票をWindowsに倍増させたいと思っています。落とし穴があります:AppDataディレクトリはデフォルトで非表示だったので、実際にこの場所にインストールされているとは思いませんでした。
Ringo

7
Windows の場合、再インストールする必要はなく、修復するだけです
MotKohn 2017年

2
@MotKohn Repaireなに?足?骨?車?「リペア」なんて!
samayo 2017

2
@samayoインストールするWindowsには、修復オプションがあります。すみません、これは前後関係のコメントでした。
MotKohn 2017

2
このアプローチは、64ビットのWindows 8.1 Enterpriseラップトップでも機能しました。「npm」フォルダと「npm-cache」フォルダの両方を削除してから、アンインストールと新しいノードのインストールを行う必要がありました。
エディ

46

走った後、私もこれを持っていた brew install yarn昨日。少なくとも、それまではすべて順調でした。

実行rm -rf node_modulesして再インストールしようとしましたが、npmコマンドが機能していませんでした。

最後に、Mac OS Xの公式のNodeインストーラーを介してNodeを再インストールするというかなり単純な手順を実行しました。

https://nodejs.org/en/download/

今はすべて元気です。ディレクトリに戻って実行するnpm installと、トリックが完了しました。


npm install私のためにやった。すべての依存関係を1つずつインストールしていましたが、npm installすべてを一度にインストールしました。ありがとう。
tazboy 2017年

3
私もこの後に私にこれを起こしましたbrew install yarn
Walter Martin Vargas-Pena

1
公式のosxインストーラーからnode.jsを再インストールするだけで役立ちました。ありがとう!
ローマ

それbrew install yarnも後に起こった!! 一体、糸
movac

23

上のアーチLinuxの私のためのトリックをやったことでした。

sudo pacman -Rs npm
sudo pacman -S npm

1
sudo pacman -Rdd依存関係を無視して削除するために使用する必要がありましたが、問題は解決しませんでした。Mathias Braunの答えで、archパッケージからsemverをインストールしました。
Pierre-Alexis Ciavaldini

15

Arch Linux 4.13.3でこれに遭遇したばかりなので、単に再インストールすることで問題を解決しましたsemver

pacman -S semver

8

実際には、以前に保存されたモジュールの参照を取得しています。

解決策:nodejsのインストールディレクトリにあるnpm-cache / npmフォルダーを削除します。Windowsでは、C:/ User / Username / Appdata / Roaming / npm(またはnpm_cache)にあります。もう一度インストールしてみてください。

どのOSでも同じことができます。


それでおしまい。ノードをアンインストールしました。次にとの両方npmを削除npm_cacheしました/Appdata/Roaming。次に、ノードを再度インストールしました。キャッシュはそこで非難されているようです。
Saulius

7

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が提案


5

私にとっては、これは糸をグローバルにインストールした後に起こりました。この問題を解決するには、yarnを使用してnpmをインストールしてください。

yarn global add npm


2

同じ問題がありましたが、package-lock.jsonファイルの破損が原因でした。

削除package-lock.jsonしてnpm install再度実行すると、修正されました。


2

以前のnpm installバージョンのノードを使用して実行したときに、この問題に直面しました。その後、最新バージョンのノードにアップグレードして実行するとgulp、このエラーが表示されました。

解決するには、node_modulesを削除して再実行しましたnpm install。その後、gulpうまくいきました。


1

/ node_modulesフォルダーを削除して、再試行してください。;)

を使用npm rmして削除できます。

この問題はGitHub でも確認できます。unnistalについてより具体的には、従うことをしようとし、これを

アンインストール

あなたが行くのを見てとても悲しい。

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インストールでは、選択した設定が記憶されないことを意味することに注意してください。


私の答えを更新しました。やってみよう。動作しない場合は、何かをテストしてください。package.jsonを別のフォルダーにコピーし、npmインストールを使用してみます。
Rodmentou 2015年

1
package.jsonを貼り付けてもらえますか?
Rodmentou 2015年

{"name": "workspace"、 "version": "0.0.0"、 "private":true、 "scripts":{"start": "node ./bin/www"}、 "dependencies":{" body-parser ":"〜1.13.2 "、" bson ":" ^ 0.2.22 "、" cookie-parser ":"〜1.3.5 "、" debug ":"〜2.2.0 "、" express " : "〜4.13.1"、 "hbs": "〜3.1.0"、 "monk": "^ 1.0.1"、 "morgan": "〜1.6.1"、 "serve-favicon": "〜2.3 .0 "}、" engines ":{" node ":" 4.2.2 "}}
user2447562 2015年

別のフォルダーにあるpackage.jsonでnpm installを実行しようとしましたか?
Rodmentou

node.jsをアンインストールした後、node.jsをインストールする必要があります...平均を使用してサンプルアプリケーションを作成する必要があります。その間、npm intallコマンドをインストールする必要がありますが、同じエラーが発生します...私....
user2447562 2015年

1

やっとこれがわかりました!はい、すべてのファイルをアンインストール/削除して再インストールする必要があります。ただし、一部のファイルパスは、アンインストールプロセス中に削除するには長すぎる場合があります。ノードのファイルパスが長すぎるため、削除できない可能性があります。ファイルパスの名前を変更する必要があります。

ノードをアンインストールした後、コマンドプロンプトを使用して、... \ Appdata \ roaming \に移動します(エラーメッセージのパスを使用します)。del npmでフォルダを削除してみてください。次に、フォルダーを削除できない場合は、次のエラーメッセージのファイルパスにあるフォルダーの名前を「a」または短いものに変更します。パス上の複数のフォルダに対してこれを行う必要がある場合があります。その後、削除できるはずです!次に、ノードを再インストールすると、動作するはずです。


1

私の場合、macOSでは、https: //nodejs.org/en/download/から最新のNodeおよびnpmバージョンをインストールすることでこれを修正しました


0

私の場合、再実行するだけでbrew install yarn問題が解決しました。


0

MacOs Sierra 10.12.6にBrewが糸をインストールした後も、同じ問題に直面しました。(そして、brew update selfの後、「HomebrewはRuby 2.3で実行する必要があります!2.0.0を実行しています(RuntimeError)」というメッセージが表示され、インストールの最初の試行が失敗します。再実行します。)

したがって、n managerを使用してnpmを再インストールします。

  • 空のパラメーターを指定した "n"コマンドで別のノードバージョン(私の場合は8.0)に切り替える
  • または、 "n xxx"で新規にインストールします。ここで、xxxはノードのバージョン番号です(6.9.1が必要です)。
  • 「n rm xxx」で作業バージョンを削除します。xxxはノードのバージョン番号です。必要に応じてsudoを使用します
  • 「n xxx」で作業バージョンをインストールします。xxxはノードのバージョン番号です。必要に応じてsudoを使用します
  • ノードの作業バージョンに切り替えます。(参照用の最初のステップを参照)

ノードがsudoでインストールされていた場合、トラブルの原因になると思います。


0

Macユーザーの場合、新しいノードバージョンを多数インストールし、別のバージョンをアンインストールしてみました。それはそれを修正しませんでした。最初にすべてのインストールを完全に一掃する必要があります。次の手順に従ってください... Node.jsを完全にアンインストールし、最初から再インストールする方法(Mac OS X)

次に、ノードの最新バージョンをダウンロードします。


0

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。次に、そのパスをPATHに追加しました。

export PATH=/home/aUser/node/bin:$PATH

その後、私はnpm install問題なく行うことができました。


0

cliの上位バージョンでプロジェクトを実行しているときに、この問題に直面しました。この問題を解決するには、単に@ angular-devkit / build-angularモジュールをコメントアウトし、再度、再インストールする必要があります。

npm install @ angular-devkit / build-angular --save


0

semverがインストールされていることを確認してください:npm install -g semver


1
npmが機能していないため、npmを使用してsemverをインストールすることはできません。最良の解決策は、yarnを使用してnpmまたは不足しているパッケージをインストールすることです
NFpeter

@NFpeter質問で述べたのとまったく同じ問題があり、この方法で修正したため、npmは機能しました(少なくとも私の場合)。
Javarome、

0

私にとっては、私のプロジェクトでgulp 3からgulp 4にアップグレードしているときに起こりました。したがって、「gulp watch」コマンドを実行すると、同じエラーが発生しました。

それはおそらく、私のグローバルにインストールされたgulpと比較して、バージョンの不一致が原因です。

したがって、gulpを「-g」グローバルフラグでアップグレードすることで解決するか、以下の手順に従ってください。

ただし、プロジェクトでは「./node_modules/.bin/gulp watch」を使用しました。これにより、gulpが必要とするすべての依存関係がnode_modulesからのみ取得されます。


0

DeveloperReference.comのanonymous(?)で指摘されているように、npm -installを実行すると、以下の手順で「モジュール 'semverが見つかりません」が解決されました。

*「私はこれらの手順に従い、Node.jsをアンインストールすることで問題を解決しました

  1. 次のフォルダの内容を削除します
    • C:\ Users \ {username} \ AppData \ Roaming \ npm-cache
    • C:\ Users \ {username \ \ AppData \ Roaming \ npm
  2. C:\ Program Files \ nodejs次に、https: //nodejs.org/en/からNodeを再度インストールします "*

https://html.developreference.com/article/12253101/Cannot+find+module+%27semver%27+When+installing+Npm


-1

プレインストールスクリプトがある場合は、確認してください。nodeとのバージョンを制限するためにnpm 1プロジェクトを実行する必要があります。

その場合は、semver手動でインストールする必要がありますnpm install -g semver


-2

私は同じ問題に遭遇し、ノードのバージョンをアップグレードすることで修正しました

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