ChatGPTのAPI Keyを環境変数として利用するためEnviedを導入しようとしたのですが、 公式のReadme通りにやってもbuild_runner実行時にエラーが発生しました。
その対処法が見つかったのでメモを残しておきます。
開発環境
・ OS: Windows 11
・ Flutter: v3.16.5
・ Dart: v3.2.3
・ Envied: ^0.5.3
ディレクトリ構成
最終的な構成は下記の通りです。
下準備
.gitignoreに下記を追記してenv関連を除外しておきます。
環境ファイル(.env.devとします)に利用したい環境変数の名前と値を入力します。
lib/env/にenv.dartを作成します。コードは下記になります。
注意点として、@EnviedFieldのvarNameの値と使用する環境変数名は一致させないといけないようです。
env.g.dartを生成する
筆者の場合、Flutterプロジェクトで利用するため、以下のコマンドでEnviedをインストールします。
次にenv.g.dartを生成するコマンドを入力します。
すると、lib/env/にenv.g.dartというファイルが生成されます。こちらが生成されていれば導入は完了です。
使用例
下記のコードでコンソール上にAPI Keyの値を出力してみます。
環境ファイルに記入した値がコンソールに出力されれば成功です。
参考リンク:
Flutter ENVied package build runner error