React Nativeの開発にはasdfが最高だと大声で叫びたい!
はじめに
みなさんは、React Nativeの開発をしているときに、Node.jsのバージョンを切り替えたり、Rubyのバージョンを切り替えたりすることはありますか?
Node.jsだとnvm、Rubyだとrbenvを使うことが多いと思います。
しかし、これらのツールは、言語ごとに別々にインストールする必要がありますし、
使い方も統一されていなくて、いざ使おうと思ったときに、使い方を忘れてしまうこともあります。
全部覚えている人はすごいですが、私は覚えられません😭
asdfとは
そこで、今回紹介するのが、asdfです。
asdfは、複数のバージョンの言語やツールを管理するためのツールです。
様々な言語やツールを管理することができますが、React Nativeの開発においては、Node.js・Ruby・Python・Javaなどのバージョンを管理することができます。
もちろん、他の言語やツールも管理することができます。
asdfのインストール
asdfのインストールは、以下のコマンドで行うことができます。
brew install asdf
React Nativeの開発に使う言語やツールのプラグインをインストールします。
asdf plugin add nodejs
asdf plugin add ruby
asdf plugin add python
asdf plugin add java
asdfの使い方
各言語やツールのバージョンを管理するファイルは、.tool-versions
です。
nvmでいう.nvmrc
と同じようなものです。
例えば、Node.jsなど複数のツールのバージョンを指定する場合は、以下のように記述します。
nodejs 18.18.0
ruby 3.2.0
java zulu-11.0.13
python 3.9.7
インストールできるNode.jsのバージョンのリストアップを確認するには、以下のコマンドを実行します。
asdf list-all nodejs
installコマンドで、指定したバージョンの言語やツールをインストールすることができます。
asdf install
一度にインストールできて便利ですね。
こっそりasdfを使いたい場合
プロジェクトでnvmやrbenvが推奨されている場合、asdfを使うことができないことがあります。
心配しないでください。.asdfrcファイルを作成し、以下のように記述することで、誰にも気づかれずasdfを使うことができます。
legacy_version_file = yes
この設定を行うと、.nvmrcや.ruby-versionを読み取ってくれるようになります。
installコマンドで、.nvmrcや.ruby-versionで指定されたバージョンの言語やツールをインストールすることができます。
asdf install
おわりに
React Nativeの開発には、Node.js・Ruby・Python・Javaなどのバージョンを切り替える必要があるので、asdfを使うと便利ですし、作業の効率化もできます。
またBitriseでもasdfはデフォルトでインストールされているので、Bitriseを使っている場合は、特に便利です。
是非、asdfを使ってみてください!
Discussion