VS Codeに”The Flutter SDK is installed in a protected folder and may not function correctly”と出た時の対処法

VS CodeでFlutter を利用している際に、
“The Flutter SDK is installed in a protected folder and may not function correctly”
とメッセージが出力されることがあります。

今回はその対応策ですが、参考になれば幸いです。

なぜメッセージが出力されるのか?

Flutter をインストールしているフォルダが保護されており、特殊な権限が必要となるためです。

通常インストールを行うと「C:\Program Files」にFlutter のインストールフォルダが
作成されますが「C:\Program Files」は保護されているため、タイトルのメッセージが出力されます。


対応方法

対応方法は単純で、Flutter のインストールフォルダを保護されていないフォルダに移動します。
手順は以下の通りです。

  1. フォルダの移動
  2. 環境変数の変更
  3. キャッシュ情報の削除(必要に応じて)

1.フォルダの移動

例えば、以下のようにAppsフォルダ(任意のフォルダ名)を作成しそこに移動します。
 「C:\Program Files\flutter」→「C:\Apps\flutter」

2.環境変数の変更

以下のように環境変数を設定している場合、修正が必要です。


3.キャッシュ情報の削除(必要に応じて)

上記の対応を行った後にbuild_runnerを実行すると、以下のエラーが発生することがあります。

Deprecated. Use dart run instead. Could not find a file named "pubspec.yaml" in "C:\Program Files\flutter\packages\flutter


キャッシュが残っており、変更前のフォルダを参照している状態です。
ターミナルで以下のコマンド実行するとエラーが解消されます。

flutter packages get


それでもエラーが発生する場合

私は上記を試し解決しましたが、それでもダメな場合があるようです。
問題として、「/flutter/.pub-cache」配下のフォルダに更新されていないキャッシュファイルが
残っているようです。

その際は以下3つのコマンドを試してみてください。

flutter clean
flutter pub get
dart pub get



以上の対応により、タイトルのメッセージは消え、build_runnerコマンドが
実行できるようになっていることを願います。。。





タイトルとURLをコピーしました