[Flutter] プロジェクトごとにFlutterのバージョンを管理する
今年の春にメモアプリを開発してリリースしました。
しかし、仕事が忙しかったり転職活動や結婚挨拶などでFlutterから遠ざかっていたので、Flutterのマイナーバージョンが10くらい変化していて驚きました。今から作成するプロジェクトはFlutterを最新(安定版)にして、メモアプリをFlutterのバージョンを当時使っていたバージョンに切り分けられたらなと思い、FVMを導入しようと考えました。今回は自分が導入した内容を記載しています。
FVMとは
FVM(Flutter Version Management)とは、コマンドを使用して複数のプロジェクトで異なるFlutterのバージョンを管理することができるツールです。
FVMの公式サイトはこちらになります。
1. Flutter SDKを削除
現在使用しているFlutter SDKを削除します。
2. FVMをインストール
fvmをHomebrewを使用してインストールを行います。
$ brew tap leoafarias/fvm
$ brew install fvm
インストール先は
~/fvm
に保存されています。
3. FVMでFlutterをインストール
FVMがインストールされたら、Flutterのバージョンを指定してインストールします。現在使用できるバージョンの一覧を、
$ fvm releases
で確認を行い、
# 3.16.4でインストールする場合
$ fvm install 3.16.4
でインストールを行います。
4. 環境設定でPathを通す
.zshrcに環境変数を設定します。~/の場所で、command + shift + . を押下すると.zshrcが参照できます。
# .zshrc
export PATH="$PATH:$HOME/.pub-cache/bin"
5. VSCODEで設定する
VSCODEのsetting.jsonで
# setting.jsonの設定
{
"dart.flutterSdkPath": ".fvm/flutter_sdk",
// Remove .fvm files from search
"search.exclude": {
"/.fvm": true
},
// Remove from file watching
"files.watcherExclude": {
"/.fvm": true
}
}
の設定を記載します。これで、VSCODE側がFlutterのバージョンを自動で読み込み込んでくれたり、ファイル検索したときにFVM関係のものは除外できます。
6. ちょっとした警告・エラー
6.1 警告
Flutter Doctorしたときに、Dartに警告が出ていました。Flutter Dartが複数入っていることが原因で、こちらの記事で解消。
6.2 エラー
flutter pub get でDartのバージョンを上げてくれと言われたので、対応できるFlutter のバージョンを変更することで対応できました(下記はエラー内容)。
json_serializable 6.7.1 requires SDK version ^3.0.0, json_serializable ^6.7.1 is forbidden.
7. fvmでプロジェクトを新規作成する
1. プロジェクトフォルダの作成し、移動する
$ mkdir test
$ cd test
2. fvmでFlutterのバージョンを指定
$ fvm use 3.16.4 --force
3. fvmでプロジェクトを作成する
com.sampleはCompany Domainなので好きなものを設定する
$ fvm flutter create . --project-name test_app --platforms android,ios --org com.sampleapp -e
まとめ
Flutterのバージョンをプロジェクトごとに切り替えて管理できるようにFVMを導入しました。意外と簡単で、最初から導入すればよかったなとホント思いました。開発頑張るぞ!
参考URL
1. FVMのやり方調査
2. Flutterに対応するDartのバージョン一覧を確認するために使用
この記事が気に入ったらサポートをしてみませんか?