🕌

【環境構築】anyenv + nodenv をインストールしてみた

4 min read

Homebrewが入ってるか確認

$ brew -v
Homebrew 2.7.3
Homebrew/homebrew-core (git revision 438d0; last commit 2021-01-12)
Homebrew/homebrew-cask (git revision 0f2b1; last commit 2021-01-12)

nodebrew用に環境変数を設定していないか確認

とその前にnodebrew用に設定していた環境変数をコメントアウトします。

$ find ~/.zprofile
find: /Users/xxxx/.zprofile: No such file or directory

そもそもnodebrewを使ったことがなかったので.zprofileが存在しなかった。
.zprofileが存在する場合は以下をコメントアウトする。

export PATH=$HOME/.nodebrew/current/bin:$PATH

anyenvをインストールし初期化する

$ brew install anyenv
$ anyenv init
# Load anyenv automatically by adding
# the following to ~/.zshrc:

eval "$(anyenv init -)"

~/.zshrcにコマンドを追記すれば自動で読み込まれる、と言っているのでやってみる。[1][2]

$ echo 'eval "$(anyenv init -)"' >> ~/.zshrc

もう一度 $ anyenv init してみるも出力は変わらない。
ターミナルを終了。

ターミナルを再起動

なんか怒られている。

ANYENV_DEFINITION_ROOT(/Users/xxxx/.config/anyenv/anyenv-install) doesn't exist. You can initialize it by:
> anyenv install --init

上記に従ってコマンドを入力する。
anyenvのGitHubには

You'll see a warning if you don't have manifest directory.

とあるため、途中の質問にはyesで回答。

$ anyenv install --init
Manifest directory doesn't exist: /Users/xxxx/.config/anyenv/anyenv-install
Do you want to checkout ? [y/N]: y
# 中略
Completed!

やったぜ。

anyenvでインストールできる**env系のリストを表示

$ anyenv install -l

nodenvやrbenvなどズラッと表示された。

nodenvをインストール

$ anyenv install nodenv
# 中略
Install nodenv succeeded!
Please reload your profile (exec $SHELL -l) or open a new session.

上記に従ってシェルを再起動する。

$ exec $SHELL -l

nodenvでインストールできるバージョンの確認

$ nodenv install -l

ズラズラズラ〜っとたくさん表示された。
目当てのバージョンが存在することを確認。

バージョンを指定してインストール

$ nodenv install 14.15.4

新しい**env系をインストールをした後はbash(shell)の再起動を忘れずに行っておきましょう

$ exec $SHELL -l

インストールされているバージョンを確認

$ anyenv versions
nodenv:
* system (set by /Users/xxxx/.anyenv/envs/nodenv/version)
  14.15.4

バージョン指定(グローバル)

バージョン名が ~/.nodenv/version ファイルに書き込まれる。

$ nodenv global 14.15.4
$ nodenv global
14.15.4
$ node -v
v14.15.4

バージョン指定(ローカル)

カレントディレクトリ内の .node-version ファイルにバージョン名が書き込まれる。
ローカルバージョンはグローバルバージョンを上書きする。
環境変数 NODENV_VERSION を設定するか、 nodenv コマンドを使用して上書きできる。

$ cd test-directory # プロジェクトのディレクトリに移動
$ nodenv install 12.20.1
$ nodenv local 12.20.1
$ nodenv local
12.20.1
$ find .node-version # .node-versionが作成されている
$ anyenv versions
nodenv:
  system
* 12.20.1 (set by /Users/xxxx/workspace/test-directory/.node-version)
  14.15.4

まとめ

備忘録的にインストール方法を書き残しました。
これで開発プロジェクトごとに、バージョンを気軽に変更できるようになりそうです。

参考文献

GitHub - anyenv/anyenv
GitHub - nodenv/nodenv
anyenv + macOS環境構築 - Qiita
MacにNode.jsをインストール(anyenv + nodenv編) - Qiita

脚注
  1. $ echo 追記する文字列 >> ファイル名 ↩︎

  2. $ eval 'hoge hoge' 指定した文字列を連結してシェルに実行させる ↩︎

GitHubで編集を提案

Discussion

ログインするとコメントできます