Как правильно импортировать material.dart в проекте на Flutter версии 3.44.1?

Почему простой импорт import 'package:flutter/material.dart'; перестал работать?
  • 6 июня 2026 г. 19:00
Ответы на вопрос 1
Короткий ответ: импорт не менялся — правильный импорт по‑прежнему

import 'package:flutter/material.dart';

Если он «перестал работать», то это не из‑за версии Flutter, а из‑за конфигурации/структуры проекта. Вот самые распространённые причины и как их исправить.

1) Проект не Flutter (создан как pure Dart)
- Ошибка: "Target of URI doesn't exist: 'package:flutter/material.dart'".
- Почему: пакет flutter не подключён в pubspec (или вы вообще не в Flutter‑проекте).
- Решение: создайте проект через flutter create или добавьте зависимость на SDK Flutter в pubspec.yaml:

dependencies:
  flutter:
    sdk: flutter

затем выполните:
flutter pub get

2) В pubspec.yaml имя пакета — "flutter" (или есть локальный пакет/файл/папка с именем flutter)
- Проблем: Dart будет искать package:flutter в вашем пакете, а не в SDK, и не найдёт material.dart.
- Решение: в pubspec.yaml поменяйте name на уникальное (не "flutter"), удалите/переименуйте локальную папку/файл flutter, затем flutter pub get и перезапустите IDE/анализатор.

3) IDE использует неправильный SDK / не видит Flutter
- Проверьте flutter --version и flutter doctor.
- В VS Code/Android Studio укажите путь к Flutter SDK (Settings → Languages & Frameworks → Flutter / Dart SDK).
- Перезапустите анализатор/IDE.

4) Проблемы с кешем/зависимостями
- Выполните:
flutter clean
flutter pub get
и перезапустите приложение/IDE.

Как проверить быстро
- Выполните в проекте:
flutter --version
flutter pub get
flutter doctor
и убедитесь, что в pubspec.yaml под dependencies есть запись
flutter:
  sdk: flutter

Пример минимального main.dart

import 'package:flutter/material.dart';

void main() => runApp(const MyApp());

class MyApp extends StatelessWidget {
  const MyApp({super.key});
  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      home: Scaffold(body: Center(child: Text('Hello'))),
    );
  }
}

Если после этих шагов всё ещё не работает — пришлите текст ошибки и содержимое pubspec.yaml (особенно поля name и dependencies) — помогу точечно.
Похожие вопросы