Flutter не является внутренней или внешней командой: как исправить ошибку в Windows

Ошибка «"flutter" не является внутренней или внешней командой, исполняемой программой или пакетным файлом» появляется в командной строке Windows, когда система не может найти исполняемый файл flutter.bat по указанному запросу. Это означает, что путь к папке bin Flutter SDK не добавлен в переменную окружения PATH, либо добавлен с ошибкой.

Проблема возникает сразу после установки Flutter SDK, после переустановки Windows, переноса папки SDK в другое место или при работе в новом окне терминала, которое не подхватило обновлённые переменные среды. Хорошая новость: сам SDK при этом обычно в порядке — нужно лишь «показать» системе, где он лежит. Ниже разберём диагностику и все рабочие способы исправления.

Почему Windows не распознаёт команду flutter

Командная строка ищет исполняемые файлы в двух местах: в текущей папке и в каталогах, перечисленных в переменной PATH. Когда вы вводите flutter doctor, Windows перебирает все пути из этой переменной и ищет файл flutter.bat. Если ни в одном каталоге его нет — появляется знакомое сообщение об ошибке.

Типичные причины:

  • 🔧 Папка flutter\bin не добавлена в PATH после установки SDK;
  • 📁 SDK перемещён в другую папку, а в PATH остался старый путь;
  • ✏️ В пути допущена опечатка или указана папка flutter вместо flutter\bin;
  • 🪟 Терминал открыт до изменения переменных среды и не видит обновлений;
  • 📦 Архив с SDK распакован не полностью, и файла flutter.bat физически нет.
⚠️ Внимание: не распаковывайте Flutter SDK в папки вроде C:\Program Files — для записи туда требуются права администратора, и команды Flutter могут работать некорректно. Рекомендуемое расположение — каталог без пробелов и без кириллицы, например C:\flutter или C:\src\flutter.

Шаг 1. Проверьте, где установлен Flutter SDK

Прежде чем править PATH, убедитесь, что SDK вообще существует на диске и вы знаете его точное расположение. Откройте Проводник и перейдите в папку, куда распаковывали Flutter. Внутри должна быть подпапка bin, а в ней — файл flutter.bat.

Быстрая проверка без PATH: откройте командную строку и выполните команду с полным путём, подставив своё расположение:

C:\flutter\bin\flutter.bat --version

Если команда вывела версию Flutter — SDK исправен, и проблема исключительно в переменной PATH. Если Windows сообщает, что файл не найден, проверьте путь ещё раз или распакуйте архив заново, следуя официальной инструкции с сайта flutter.dev.

Шаг 2. Добавьте Flutter в переменную PATH

Это основное решение ошибки. Порядок действий для Windows 10 и 11:

  • ⚙️ Нажмите Win + R, введите sysdm.cpl и нажмите Enter;
  • 🖱️ Перейдите на вкладку «Дополнительно» и нажмите кнопку «Переменные среды»;
  • 📋 В разделе «Переменные среды пользователя» найдите переменную Path, выделите её и нажмите «Изменить»;
  • ➕ Нажмите «Создать» и вставьте полный путь к папке bin, например C:\flutter\bin;
  • ✅ Подтвердите все окна кнопкой «ОК».

☑️ Добавление Flutter в PATH — чек-лист

Выполнено: 0 / 6

Обратите внимание: добавлять нужно путь именно к подпапке bin, а не к корневой папке Flutter. Это самая частая ошибка при самостоятельной настройке.

⚠️ Внимание: уже открытые окна командной строки, PowerShell и терминалы в редакторе кода не подхватывают изменения PATH. После правки переменных среды обязательно закройте и заново откройте терминал, а в случае с VS Code или Android Studio — перезапустите всю программу.

Шаг 3. Проверьте результат

Откройте новое окно командной строки (Win + Rcmd) и выполните:

flutter --version

Если вместо ошибки вы видите версию Flutter, канал и версию Dart — настройка завершена. Следующий логичный шаг — запустить диагностику всей цепочки инструментов:

flutter doctor

Команда flutter doctor проверит наличие Android SDK, принятых лицензий, подключённых устройств и других компонентов, необходимых для разработки. Ошибки, которые она покажет, уже не связаны с PATH и решаются отдельно.

📊 На каком этапе у вас возникла ошибка «flutter не является командой»?
Сразу после первой установки SDK
После переноса или переименования папки SDK
После переустановки Windows
В терминале редактора (VS Code / Android Studio)

Ошибка осталась: что проверить дополнительно

Если после добавления пути и перезапуска терминала команда по-прежнему не распознаётся, пройдитесь по списку возможных причин.

Опечатка или лишние символы в PATH. Откройте переменную Path ещё раз и внимательно сверьте запись с реальным путём в Проводнике. Лишний пробел в конце, двойной слеш или буква другого диска делают запись бесполезной.

Проверка через командную строку. Увидеть текущее содержимое PATH можно командой echo %PATH% в cmd или $env:Path в PowerShell. Найдите в выводе свою запись — если её нет, изменения не сохранились.

Кириллица и пробелы в пути. Если папка SDK лежит внутри каталога с русскими буквами (например, в профиле пользователя с именем на кириллице), перенесите SDK в простой путь вроде C:\flutter и обновите запись в PATH.

Терминал редактора. Встроенный терминал VS Code или Android Studio наследует переменные среды от процесса редактора. Перезапустите редактор целиком, а не только окно терминала.

Альтернативные способы запуска flutter

Если настраивать PATH по какой-то причине неудобно, есть обходные варианты.

Полный путь к файлу. Всегда можно вызвать инструмент напрямую: C:\flutter\bin\flutter.bat doctor. Способ рабочий, но утомительный при ежедневной разработке.

Временное добавление в PATH. В текущем окне cmd можно выполнить set PATH=%PATH%;C:\flutter\bin — запись будет действовать только до закрытия этого окна. Это удобно для разовой проверки.

Flutter Console. В папке SDK есть файл flutter_console.bat — он открывает командную строку с уже настроенным путём к Flutter. Подходит как временное решение, пока не настроен системный PATH.

Почему в PATH иногда встречается несколько записей Flutter

Такое бывает после нескольких установок SDK в разные папки. Windows берёт первую найденную копию flutter.bat, поэтому лишние записи стоит удалить, оставив одну актуальную. Иначе команда flutter может запускать старую версию SDK, что вызывает конфликты при обновлении и работе пакетов.

Сравнение способов решения

СпособКогда применятьДействует постоянно
Добавление пути в PATH через «Переменные среды»Основное решение для ежедневной работыДа
Полный путь к flutter.batРазовая проверка, диагностикаНет
set PATH в текущем окне cmdВременный доступ без правки системыДо закрытия окна
flutter_console.batБыстрый старт без настройки PATHТолько в этом окне

Часто задаваемые вопросы

Добавил путь в PATH, но ошибка не исчезла. Что делать?

Чаще всего помогает перезапуск терминала: уже открытые окна cmd, PowerShell и редакторы не видят новые переменные среды. Закройте их полностью и откройте заново. Если не помогло — проверьте путь на опечатки и убедитесь, что добавлена папка bin, а не корень SDK.

Куда лучше устанавливать Flutter SDK в Windows?

В папку без пробелов и кириллицы в пути, не требующую прав администратора — например, C:\flutter или C:\dev\flutter. Избегайте C:\Program Files и профилей пользователей с русскими именами.

Команда работает в cmd, но не работает в терминале VS Code. Почему?

VS Code унаследовал старые переменные среды при запуске. Полностью закройте редактор (включая значок в трее, если он там остаётся) и запустите снова — встроенный терминал подхватит обновлённый PATH.

Нужно ли добавлять в PATH что-то ещё, кроме flutter\bin?

Для запуска самой команды flutter достаточно папки bin внутри SDK. Однако для полноценной разработки под Android дополнительно потребуются Android SDK и его инструменты — их настройку покажет команда flutter doctor.

Можно ли добавить Flutter в PATH через командную строку?

Да, существует команда setx для записи пользовательских переменных, однако при неосторожном использовании она способна перезаписать или обрезать текущее значение PATH. Безопаснее добавлять путь через графический интерфейс «Переменные среды», где видно всё содержимое переменной.