はじめに
かなり過去になりますが、以前に下記で node.js を導入する記事を書きました。
そして今更な話ではありますが、今回は anyenv を使った nodenv の導入についての記事なります。
( 毎回調べるの手間なので備忘録がてら記事に残します )
anyenv インストール手順( Linux / chromeos / mac )
1. 依存パッケージのインストール( まだなら )
linux / chromeos
sudo apt update
sudo apt install -y git curl build-essential
mac
xcode-select --install
2. anyenv をインストール
git clone https://github.com/anyenv/anyenv ~/.anyenv
3. シェルの設定ファイルに anyenv を追加
bash の場合( ~/.bashrc
)
echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(anyenv init -)"' >> ~/.bashrc
zsh の場合( ~/.zshrc
)
echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(anyenv init -)"' >> ~/.zshrc
設定を反映( bash / zsh 共通)
exec $SHELL -l
4. anyenv を初期化
anyenv install --init
これで、~/.anyenv/envs
以下に各言語のバージョン管理ツールをインストールできるようになります!
補足: anyenv-update を入れておくと便利
git clone https://github.com/znz/anyenv-update.git "$(anyenv root)/plugins/anyenv-update"
これで anyenv-update
が入りました。
あとは必要に応じて下記を実行することで
anyenv update
自分の環境に入っている
- anyenv 本体のアップデート
- インストール済みの各 env ツール( nodenv, pyenv, goenv, rbenv など )のアップデート
- インストール済みのプラグイン( たとえば pyenv-virtualenv ) のアップデート
といったものが一括更新できるようになります。
nodenv をインストールして Node.js を管理する
anyenv install nodenv
exec $SHELL -l # シェルを再読み込み
nodenv install 23.11.0 # 好きなバージョンをインストール
nodenv global 23.11.0
📝 memo 📝
同じようにして pyenv, goenv, rbenv なども使えます。
インストール可能な nodejs のバージョンを確認する
事前準備: node-build
が必要
nodenv
単体ではバージョンリストを出せないので、Node.js のビルド機能を提供する node-build
を一緒に入れておく必要があります。
nodenv install 23.11.0 # ←みたいにバージョン指定でインストールできるのは node-build があるおかげ
次のコマンドで node-build
のインストールを行います。
git clone https://github.com/nodenv/node-build.git "$(nodenv root)"/plugins/node-build
これで OK。
インストール可能なバージョン一覧を表示
バージョン一覧は...
nodenv install -l
or
nodenv install --list
で確認できます。
で、その実行例が下記です。
出力例( 一部 )
% nodenv install --list
18.20.8
20.19.0
22.14.0
23.11.0
graal+ce-19.2.1
graal+ce_java11-20.0.0
graal+ce_java8-20.0.0
Only latest stable releases for each Node implementation are shown.
Use 'nodenv install --list-all / -L' to show all local versions.
📝 memo 📝
もし nodenv install -l
を打っても何も出ない場合は、node-build
が入ってないか、パスが通ってない可能性があります。
その場合はご自身の環境を見直してみてください。
補足: よく使うコマンド
詳しくは こちら をご参照ください。
バージョンの一覧を出すのとインストールのためのコマンド。
# list latest stable versions:
nodenv install -l
# list all local versions:
nodenv install -L
# install a Node version:
nodenv install 23.11.0
nodenv
をアンインストールする場合は下記で削除してやればよいです。
これで ${nodenv root}/versions/
配下のすべてのバージョンが削除されます。
rm -rf `nodenv root`
バージョン名を ~/.nodenv/version
ファイルに書き込むことで、すべてのシェルで使用される Node のグローバルバージョンを設定します。
このバージョンは、アプリケーション固有の .node-version
ファイル、または NODENV_VERSION
環境変数によって上書きすることができます。
nodenv global 23.11.0
カレントディレクトリの .node-version
ファイルにバージョン名を書き込むことで、ローカルのアプリケーション固有の Node バージョンを設定します。
このバージョンはグローバル・バージョンをオーバーライドし、NODENV_VERSION
環境変数を設定するか nodenv シェル・コマンドでオーバーライドすることができます。
nodenv local 23.11.0
解除する場合は下記を実行すれば良いです。
nodenv local --unset
インストールされているバージョンを知りたければ下記を実行します。
nodenv versions
18.20.8
20.19.0
22.14.0
* 23.11.0 (set by /Users/will/.nodenv/version)
新しい node バージョン( ※-1 ) や npm パッケージをインストールした後にこのコマンドを実行します。
そうすることで nodenv
がインストールした新しいコマンドを認識できるようになります。
nodenv rehash
※-1
新しい node バージョンをインストールすると標準で入ってるバイナリが増えるケースがあります。
そうしたときにも nodenv rehash
を行うことで認識されます。
こちらをインストールすることで自動化できます。