DEVDEV

nodenvのインストールと使い方

作成日
2022-06-01
更新日
2022-06-01

TODO: Node Package Managerの記事として全てまとめる

環境

  • m1 mac

目的

corepackを使用する。

nodebrewでは、うまくいかないので、nodenvもしくは、fnmを使用する。

ドキュメント

m1のBrewの再インストール

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/r.nishimura/.zprofile eval "$(/opt/homebrew/bin/brew shellenv)"

nodenvのbrew install

brew install nodenv

zshに記載し、再読み込み

eval "$(nodenv init -)"

確認

curl -fsSL https://github.com/nodenv/nodenv-installer/raw/master/bin/nodenv-doctor | bash

最新する

brew upgrade nodenv node-build

nodenvのコマンド

確認

nodenv install -l

インストール読み込み

nodenv install 14.19.0 nodenv install 16.13.2

読み込み

nodenv rehash
インストールされているNode.jsのバージョン一覧 nodenv versions # ローカル(カレントディレクトリ配下)で利用するNode.jsのバージョンを設定する nodenv local 15.14.0 # グローバル(システム全体)で利用するNode.jsのバージョンを設定する nodenv global 16.3.0

nodenvでNode.jsのバージョンを切り替える

fnmも使ってみる

Schniz/fnm: 🚀 Fast and simple Node.js version manager, built in Rustがいいっぽい

https://zenn.dev/rabbit/scraps/d1ba60e94217e1

find . -name “node_modules” | xargs rm -rf find . -name “node_modules” | xargs rm -rf && yarn

Corepack Node.jsに追加されたパッケージマネージャーマネージャー / #tng37 - Speaker Deck

fnmだと、.node-versionを見て切り替えてくれなかったので、

https://github.com/Schniz/fnm/issues/92#issuecomment-564427402 を参考に、.zshrcにシェルスクリプトを追加。

zsh
#FNM autoload autoload -U add-zsh-hook _fnm_autoload_hook () { if [[ -f .node-version && -r .node-version ]]; then echo "fnm: Found .node-version" fnm use rehash elif [[ -f .nvmrc && -r .nvmrc ]]; then echo "fnm: Found .nvmrc" fnm use rehash else fnm use system --quiet rehash fi } add-zsh-hook chpwd _fnm_autoload_hook && _fnm_autoload_hook

Related