はじめに

自宅では仕事(コードを書く)ではmacOSを使っている(会社貸与品だったり私物だったりする)んですが、 それ以外の用途ではWindows環境の自作デスクトップPCを使っています。 ゲームをやるための用途で性能を盛っている為、Windowsでないとダメだったんですが、 まぁそういう用途だったとしても時々コードを書いたりすることもあります。

それで、今回Flutterをやってみる機運になったのですが、Windows環境でのセットアップでけっこうハマったので、 環境構築のメモ書きを残しておこうかなと思いました。

なお、Flutterのプロジェクトは wasabeef/flutter-architecture-blueprints をfork(テンプレとして生成)したものになります。 … いやもしかするとこのプロジェクト起因の話もあるかも知れない。

環境構築について

WindowsでFlutter開発をするにあたってはAndroidアプリ開発をするのにプラスアルファがある程度です。 ただ、macOSでの開発と異なり、JDKのインストールは結構厄介なので気をつけてください。 (macOSだとそのあたり何故か何とかなるんだけどな)

  • Android Studio

    • 安定した最新版が良い。執筆時点では 2020.3.1 Patch 3
  • Chocolatey

    • コマンド類をインストールするのに使う。macOSで言うところのHomebrewのようなもの。
    • Chocolatey経由で sudo をインストールすると、パッケージインストールの一瞬だけ権限昇格したい時便利。
  • choco install git.install --params "/NoAutoCrlf"

    • なんだかんだGitに依存していることがあるので。
    • Windows環境では改行コードの扱いがややこしいですが、IDE側で解釈できるから切っておいた方が良いと思います
  • JDK 1.8.0 を ojdkbuild/ojdkbuild から入手してインストールする

    • 2021年10月26日現在、Windows環境でAndroidアプリ開発をする上で選ぶべきJDKです。。。

    • (いやしかしいくつかJava11でないと動かないようなAPTライブラリがあったような気もするが・・・)

    • この問題が解決したら特別Javaバージョンの縛りはない(GradleとかAndroidの都合はあるかも)ので、修正されることを望みます

また、flutter-architecture-blueprints が要求するツールとして以下が必要です。

追記[2021/12/01]: とか言ってたら wasabeef/flutter-architecture-blueprints では asdf を使うようになっててウーン。。。

  • choco install make

    • Makefileの解釈に必要。それ以外のツール(gccみたいなやつ)はいまのところ不要です。
  • choco install fvm

    • fvm | Flutter Version Management
    • Flutterのバージョン指定をリポジトリで独立させるために必要
    • Android Studio側の設定変更が多少あるのに注意(IDEからの実行をしたいとき必要)
  • node のインストール

    • 当該repoではHuskyというgit hooksを管理するツールを使うためだけにnodeを要求している
    • オススメは choco install nvs
    • インストール後 nvs コマンドを引数なしで実行して、適当なnodeバージョンをインストールする