WindowsにインストールしたNode.jsとnpmのアップデートとそれに伴う警告メッセージの改善

WindowsにインストールしたNode.jsとnpmのアップデートとそれに伴う警告メッセージの改善

こんにちは、ゆんつです。

僕はWindows10のPCにNode.jsとnpmをインストールしています。

インストールしているNode.jsのバージョンは12.18.3でnpmのバージョンは6.14.6。

現在インストールしているNode.jsのバージョンは12.18.3でnpmのバージョンは6.14.6

現在(2022年6月)の最新の安定版のNode.jsのバージョンは16.5.1でnpmは8.11.0で、僕のPCにインストールされているバージョンはかなり古くなってしまいました。

久しぶりにNode.jsを使うことになったので、Node.jsとnmpを現時点の一番新しいものにバージョンアップすることにしました。

WindowsでのNode.jsとnpmのバージョンアップ方法

WindowsでNode.jsとnpmのバージョンアップをするのはとても簡単です。

まず、Node.jsのWEBサイトにアクセスします。

https://nodejs.org/ja/

そして「推奨版」と書かれた方をダウンロード。

Node.jsのWEBサイトから「推奨版」と書かれた方をダウンロード

ダウンロードしたmsiファイルをダブルクリックして実行。

Node.jsのセットアップウィンドウが開くので、あとはずっと「NEXT」ボタンをクリックしてインストールを完了させれば良いだけです。

セットアップウィンドウが開いたら、あとは「NEXT」ボタンをクリックしてインストールを完了させる

インストール完了!

Node.jsのインストール完了!

インストールが完了したのでバージョンを確認してみます。

インストール後にバージョン確認したらアップデートは出来ていたがnpmに警告メッセージが出た
ゆんつ
あら?

バージョンはNode.jsが16.5.1でnpmが8.11.0と最新になっているのですが、npmに警告メッセージのようなものが出ています。

npm WARN config global --global, --local are deprecated. Use --location=global instead.

翻訳してみると

config global --global--localは非推奨です。代わりに--location=globalを使用してください。

というメッセージみたいです。

npxのコマンドなどを使っても、この警告メッセージが出ます。

Node.jsのインストールだけでアップデートが完了すると思っていましたが、これを解決しなければならなくなりました。

警告メッセージが出ないように色々試してみる

この警告メッセージについて調べてみたところ、以下のサイトが引っかかりました。

https://stackoverflow-com.translate.goog/questions/72401421/npm-warn-config-global-global-local-are-deprecated-use-location-glo?_x_tr_sl=auto&_x_tr_tl=ja&_x_tr_hl=ja&_x_tr_pto=wapp

この警告メッセージの改善方法についての質問をしているスレッドです(元は英語なのでgoogleで翻訳しています)

そこの回答に書かれていた改善案を試してみたいと思います。

npmを8.12.1にアップデートする

npm8.12.1にすると警告が修正されるという回答がありました。

npmを8.12.1にアップデートしたら改善したという書き込み

ですので、これを試してみます。

コマンドプロンプトから

npm install -g npm

でnpmを更新します。

npmを8.12.1に更新

nmpのバージョンをチェックしてみると、npmのバージョンは8.12.1に更新されましたが相変わらず警告メッセージは出ています。

npmのバージョンを8.12.1に更新しても警告メッセージが出る
ゆんつ
むむむ・・・

4つのファイルの「prefix -g」を「prefix --location=global」に置き換える

npmを8.12.1にしても改善しなかったので、別の回答を試してみます。

4つのファイルの「prefix -g」を「prefix --location=global」に置き換えたら改善したという書き込み

それは、nodejsフォルダにある

  • npm
  • npm.cmd
  • npx
  • npx.cmd

という4つのファイルを管理者権限で実行したコードエディタでそれぞれ開いて、「prefix -g」となっているコードを「prefix --location=global」に置き換えるという方法です。

nodejsフォルダにあるnpm、npm.cmd、npx、npx.cmdの「prefix -g」を「prefix --location=global」に置き換える

それでは、順次置き換えていきます。

C:\Program Files\nodejs

にアクセスし、npmというファイルを管理者権限で実行したVSCODEなどのコードエディタで開きます。

そして、23行目にある「prefix -g」を「prefix --location=global」に置き換えます。

npmの23行目にある「prefix -g」を「prefix --location=global」に置き換える
置き換え後のコード

続いてnpm.cmdというファイルを開き12行目にある「prefix -g」を「prefix --location=global」に置き換えて上書き保存。

npm.cmdの12行目にある「prefix -g」を「prefix --location=global」に置き換える
置き換え後のコード

さらに、npxを開き32行目の「prefix -g」を「prefix --location=global」に置き換え。

npxの32行目にある「prefix -g」を「prefix --location=global」に置き換える
置き換え後のコード

最後に、npx.cmdを開いて13行目の「prefix -g」を「prefix --location=global」に置き換え。

npx.cmdの13行目にある「prefix -g」を「prefix --location=global」に置き換える
置き換え後のコード

以上で作業は完了です。

ファイルを上書き保存してバージョンを確認してみると、これまで出ていた警告メッセージが出なくなりました!

コードを置き換え後は警告メッセージが出なくなった!

また、npxなどのコマンドを使用しても警告メッセージは出なくなりました。

ゆんつ
やったぜ!

警告メッセージについても無事解決しました!

警告メッセージが気にならないなら放っておいても良いと思います

僕は警告メッセージが出るのが気持ち悪かったので色々と改善方法を試しましたが、警告メッセージが出ても普通に使用することはできるので、気にならないなら放っておいても良いと思います。

ただ、警告メッセージが出ないほうが気分的にはスッキリします(笑)

何かの参考になれば幸いです。

それでは、またー。