Macでのnvmインストール方法
問題点
Homebrewでnvmをインストールしたにも関わらず、ターミナルでnvm -vを実行するとcommand not found: nvmエラーが発生します。Homebrewはnvm 0.39.5 is already installed and up-to-dateと表示しているため、インストール自体は成功していますが、パスの設定やシェル構成が正しく行われていない状態です。
主な原因は次のいずれかです:
nvmのパスがシェル設定ファイル(.zshrc)に追加されていない~/.nvmディレクトリが存在しない- 設定の反映が行われていない
解決策
以下に効果的な解決手順を段階的に説明します。最新のmacOS(Sonoma以降)とzshシェルを想定しています。
🛠 手順1: nvmの再インストールと設定
bash
# Homebrewのアップデート
brew update
# nvmの再インストール
brew reinstall nvm
# nvm用ディレクトリ作成
mkdir -p ~/.nvm
# zshrcへの設定追加
echo 'export NVM_DIR="$HOME/.nvm"' >> ~/.zshrc
echo '[ -s "$(brew --prefix nvm)/nvm.sh" ] && \. "$(brew --prefix nvm)/nvm.sh"' >> ~/.zshrc
echo '[ -s "$(brew --prefix nvm)/etc/bash_completion.d/nvm" ] && \. "$(brew --prefix nvm)/etc/bash_completion.d/nvm"' >> ~/.zshrc
# 設定の即時反映
source ~/.zshrc✅ 手順2: 動作確認
bash
nvm --version # 正しく設定されていればバージョンが表示されるエラーが解決しない場合の追加対策
注意
次の方法は問題が解消しない場合のみ試してください
🔄 代替策1: 手動でシェル設定を編集
.zshrcをエディタで開く:
bash
open ~/.zshrc- ファイル末尾に以下を直接記述:
zsh
export NVM_DIR="$HOME/.nvm"
[ -s "$(brew --prefix nvm)/nvm.sh" ] && . "$(brew --prefix nvm)/nvm.sh"- 変更を保存後、設定を再読み込み:
bash
source ~/.zshrc🔧 代替策2: nvmスクリプトの直接実行
bash
cd ~/.nvm
source nvm.sh # スクリプトを直接実行❗ トラブルシューティング
brew doctorで問題確認:bashbrew doctor出力された警告があれば対応し、Homebrew環境を健全に保ちます
完全再インストールが必要な場合:
- 関連ファイルを削除:
bashrm -rf /usr/local/bin/npm rm -rf /usr/local/bin/npx rm -rf /usr/local/bin/node brew uninstall --force nvm rm -rf ~/.nvm- 最初の解決策から再実行
補足情報
- nvmの利点: 複数のNode.jsバージョンを切り替えて使用可能
- 推奨設定:
.zshrcへのパス追加は必須(ターミナル起動時に自動読み込み) - 動作確認コマンド例:bash
nvm install 18 # Node.js v18をインストール nvm use 18 # v18に切り替え
正しく設定されれば、nvm --versionがバージョン情報(例:0.39.5)を返します。これにより、プロジェクトごとに適切なNode.jsバージョンを管理できるようになります。