2018年11月 6日 (火)

[備忘録] npm が壊れたときの対処方法 (Windowsの場合)

最近、開発では何かとnpmを使いますが、何かのきっかけで npm が壊れたようなので修正方法を備忘録として残しておきます。Mac に関しては情報があるんですが、意外と Windows に関する情報がなかったので。

出たエラーは次の通り(Visual Studio Code のターミナル画面)。

PS C:\演習Kit\Bot Framework\BotBuilder-Samples\samples\
javascript_es6\01.a.browser-echo> npm

module.js:550
  throw err;
  ^

Error: Cannot find module 'npmlog'
at Function.Module._resolveFilename (module.js:548:15)
at Function.Module._load (module.js:475:25)
at Module.require (module.js:597:17)
at require (internal/module.js:11:18)

....

2018-11-06_16-37-56

 

どうも、"npmlog" モジュールが見つからない。単純に npm -v を実行しても同様にエラーとなる。

そこで、下記のリンク先を参考に以下の手順を実行してみたところ正しく動作するように。

[参考] cannot find module 'npmlog' - after updated npm

  1. Node.js をアンインストールするためコントロールパネルから削除
  2. 上記リンクには、%PROGRAMFILES%\nodejs\node_modules 配下の 'npm' フォルダーを削除するか名前を変更するとあるが、1の手順によりフォルダーは削除されている模様。よって存在しないことを確認
  3. C:\Users\<user>\AppData\Roaming\npm フォルダーが存在することを確認し、npm フォルダーごと削除
  4. msiインストーラーを使って Node.js ファイルを再インストール (Node.js のバージョンは8.12.0 を利用。 SharePoint Frameworkが v8 までしかサポートしていないため)
  5. node -v および npm -v を実行し、正しくバージョンが表示されることを確認

ちなみに最初は3の手順を省いていたのですが、これだと正しく修正できませんでした。

 

コメント