Copyright (C) iPhoneアプリ開発備忘録 All rights reserved.
ブログ内で記したコード、内容の正確性は保証いたしません。
記載内容を実装したことにより発生した不具合・損害等の責任は一切負いません。



2024年05月15日

Node.js、npm、nvmをアップデートする



Node.jsをバージョンアップする前に、nvm(Node Version Manager)、npm(Node Package Manager)をバージョンアップしておく。


0. ターミナルを起動する。

1. nvmをアップデートする。
(1) nvmのバージョンを確認する。
nvm --version


(2) アップデート
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

上記コマンドで、V0.39.7はバージョン番号を示す。nvmを配信するgithubにアクセスし、最新バージョンを把握して書き換える。
https://github.com/nvm-sh/nvm#install--update-script

(3) ターミナルを再起動する。
ターミナルを再起動しないと、最新バージョンは反映されない。

(4) nvmのバージョンを確認する。
nvm --version

上記の場合、0.39.7と表示されていればOK。


2. npmをアップデートする。
(1) npmのバージョンを確認する
npm --version


(2) アップデート
npm update -g npm

バージョンを指定する場合:
npm install -g npm@10.7.0

パーミッションでエラーとなった場合、下記操作を行う。

(2)-1 ホームディレクトリにグローバルインストール用のディレクトリを作成
mkdir ~/.npm-global


(2)-2 新しいディレクトリパスを使用するようにnpmを構成
npm config set prefix '~/.npm-global'


(2)-3 任意のテキストエディタで、~/.profileファイルを開くか作成して、次の行を追加
export PATH=~/.npm-global/bin:$PATH


(2)-4 更新
source ~/.profile


https://zenn.dev/ikeo/articles/8d0c88dcedf256b09f73
https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally

(2)-5 (2)を再度実行
下記のエラーとなった場合は、/.npm-globalに、libディレクトリをmkdirで作成する。
npm ERR! path /Users/(USER-NAME)/.npm-global/lib
npm ERR! enoent ENOENT: no such file or directory, lstat '/Users/(USER-NAME)/.npm-global/lib'


ネット上には上記以外の方法を記載した記事があるが、npm公式が提示しているトラブルシューティングに従うのが妥当。

(3) npmのバージョンを確認する
npm --version


(4) npmのバージョンが上がっていない場合
sudo npm install -g npm

npmのバージョンアップを実行した場合、ターミナルのコンソールに下記のようなメッセージが表示されているかを確認する。
npm WARN notsup Unsupported engine for npm@10.7.0: wanted: {"node":"^18.17.0 || >=20.5.0"} (current: {"node":"14.17.0","npm":"6.14.13"})
npm WARN notsup Not compatible with your version of node/npm: npm@10.7.0

これは、インストールされているNode.jsのバージョンが、アップデートしたnpmのバージョンに対応していないことを示している。
下記のNode.jsのアップデートを実施する。
Node.jsのアップデート後に、再度(3)を実行すれば、npmのバージョンがアップデートされていることが確認できる。



3. Node.jsのアップデート
(1) アップデート可能なNode.jsのバージョンを確認する
nvm ls-remote


(Latest LTS: Iron)と表示されているバージョンが安定版

(2) アップデート
nvm install 20.13.1

(Latest LTS: Iron)と表示されているバージョン番号の頭文字v以降の数字のみを指定する。
上記事例では、V20.13.1を指定。

(3) 利用するNode.jsのバージョン切り替え
nvm use 20.13.1


(4) 利用しているNode.jsのバージョンの確認
node -v



4. 古いNode.jsを使用しない場合
(1) アンインストール
nvm uninstall v12.16.1

上記の場合、v12.16.1がアンインストール対象。

(2) アンインストールを確認
nvm ls

v12.16.1が表示されていなければOK。


関連記事
http://iphone-app-developer.seesaa.net/article/481766405.html
https://qiita.com/FukuharaYohei/items/ecc1cb026127d77bf299
https://qiita.com/siakio/items/99817fc98c633bd3fd21
https://parashuto.com/rriver/tools/updating-node-js-and-npm#google_vignette
posted by mobileDeveloper at 12:37 | Comment(0) | TrackBack(0) | その他 はてなブックマーク - Node.js、npm、nvmをアップデートする | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック
Apple、Appleのロゴ、App Store、iPodのロゴ、iTunesは、米国および他国のApple Inc.の登録商標です。
iPhone、iPod touch、iPadはApple Inc.の商標です。
iPhone商標は、アイホン株式会社のライセンスに基づき使用されています。
その他、本ブログに記載されている製品名、会社名は、それぞれ各社の商標または登録商標です。