Flutter SDKバージョンを管理する

2023年8月20日

開発環境
OS:Windows 11
SDK:VS Code + Flutter 3.7.5

概要

プロジェクト毎にFlutter SDKのバージョンを使い分ける方法です。

Flutter SDKのバージョン管理

Flutter SDKの開発サイクルは早いです。

日々、機能改善、機能追加が行われており、それに伴い、SDKバージョンも上がっています。

今現在(2023.08.20)の最新バージョンは、3.13.0です。

(SDKバージョンはこちらをチェック)

最新バージョンを使うことで既存機能やセキュリティの向上、新しい機能が利用できるなどのメリットがありますが、

その一方、バージョンが上がることによって問題になるのが挙動やI/Fの変更です。

自身がコーディングした箇所でバージョン違いによるI/Fの問題が発生する分には対応できますが、

組み込んでいるパッケージ内で最新バージョンに対応できないエラーが出るとお手上げです。

そこでそのようなバージョン違いによるパッケージ内エラーが発生するプロジェクトでは、

Flutter SDKのバージョンを開発当時のまま使用することでエラーの発生を抑えます。

(特にFlutter SDKバージョン2.x.x→3.x.xのバージョンアップはエラーが出やすいです。)

Flutte SDKバージョン管理ツール、fvmを使用します。

fvmをインストールする

まずはfvmをインストールします。

インストール手順については下記を参照してください。

Flutterプロジェクトにfvmを設定する

fvmで管理したいプロジェクトのフォルダに移動し、fvmコマンドを実行します。

コマンド内容
fvm releasesFlutter SDKのリリースバージョンをリスト表示する
fvm use (version)使用するバージョンを指定する
fvm install (version)指定バージョンのFlutter SDKをインストールする
fvm listインストール済みバージョンをリスト表示する
fvm remove (version)指定バージョンを削除する

※fvm useコマンドは、Windowsの場合、管理者権限のあるコマンドプロンプトで実行する必要があります。

fvmの設定が完了するとプロジェクトフォルダ内に.fvmが作成されます。

fvmを使用する

後はflutterコマンドの前にfvmを付けて使用します。

アプリを実行するなら、

fvm flutter run -d (実行対象)

アプリを作るなら、

fvm flutter build appbundle

今回は以上です。

Windowsにfvmをインストールする

2023年8月20日

開発環境
OS:Windows 11
SDK:VS Code + Flutter 3.7.5

概要

Flutter SDKのバージョン管理ツール、fvmをインストールします。

Chocolateyをインストールする

Windowsでfvmをインストールする場合、

Chocolatey(ソフトウェア管理ツール(無料))を使ってインストールすることになります。

そのため、まずはChocolateyをインストールします。

管理者権限のパワーシェルを起動し、下記コマンド※を入力します。

※複数行で表示されていますが、1つのコマンドです。

(詳細は、こちら

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString(‘https://community.chocolatey.org/install.ps1’))

途中、キー入力が必要ですが、「Y」か、「A」を入力すればインストールが継続します。

これでChocolateyがインストールできました。

fvmをインストールする

次に管理者権限のパワーシェルで下記コマンドを入力し、fvmをインストールします。

choco install fvm

こちらも途中、キー入力が必要です。「Y」か、「A」でインストールが継続します。

これでfvmのインストールが完了。

のはずですが、コマンドプロンプトで「fvm –version」と入力しても動作しませんでした。

fvmのインストールが失敗する要因

どうやらfvmのインストールが失敗しているようです。

もう1度、fvmインストールコマンド「choco install fvm」を実行し、

キー入力の場面で「P」を入力し、実行スクリプトを確認してみます。

スクリプトを見ると、

dart pub getで何かを取得し、dart compileを使ってfvm.exeを作成する。

という流れのようです。

スクリプトが成功するとC:\ProgramData\chocolatey\lib\fvm\binにfvm.exeができるよう

ですが、フォルダの中を確認してみると存在しません。

つまり、dart compileでfvm.exeが作れていないってことのようです。。。

そこで最初に実行した「choco install fvm」コマンドの実行結果を見直してみると・・・

Error: Unable to find git in your PATH.

エラーが出ていました。

「git」が見つからない、だと。

gitをインストールする

PCに「git」がインストールされていないのが問題だったようです。

そこで管理者権限のパワーシェルで下記コマンドを入力し、gitをインストールします。

choco install git

こちらも同様、途中、キー入力が必要です。「Y」か、「A」でインストールが継続します。

もう一度、fvmをインストールする

gitのインストールが完了したので再度、fvmをインストールします。

fvm自体はすでにインストール済み、スクリプトが失敗した状態なので

強制インストールのオプション付きでインストールコマンドを実行します。

choco install fvm –force

ついに成功しました。

これでfvmが使用できます。

Macにfvmをインストールする

ちなみにMacにfvmをインストールする場合は下記コマンド。

brew install fvm

Homebrewがインストールされていれば、これだけでインストールできます。

(Windows)Chonolatey = (Mac)Homebrewって感じですね。

今回は以上です。