Я новичок в Flutter и Isar, я хочу использовать Isar для локальной БД для своего приложения. Когда я пытаюсь использовать build_runner для создания файла Studylog.g.dart, ничего не создается.
Вот мой файл коллекции
import 'package:isar/isar.dart';
part 'studylog.g.dart';
@collection
class Studylog{
Id id = Isar.autoIncrement;
late String videoID;
late DateTime studydate;
}
@collection
class Scores{
Id id = Isar.autoIncrement;
late int q1score;
late int q1total;
late int q2score;
late int q2total;
final studylog = IsarLink<Studylog>();
}
И после того, как я запустил fluttter pub run build_runner build
, результат:
Deprecated. Use `dart run` instead.
[INFO] Generating build script completed, took 286ms
[INFO] Reading cached asset graph completed, took 76ms
[INFO] Checking for updates since last build completed, took 3.1s
[INFO] Running build completed, took 10ms
[INFO] Caching finalized dependency graph completed, took 55ms
[INFO] Succeeded after 72ms with 0 outputs (0 actions)
Когда я запустил dart run build_runner doctor
, я получил следующий результат:
[INFO] Generating build script completed, took 300ms
[WARNING] Builder isar_generator:isar_generator outputs .isar_generator.g.part from .dart which is not specified in the `build.yaml`
Я подумал, может быть, что-то не так с build.yaml.
Создается файл с именем Studylog.g.dart.
Да, имя файла — «studylog.dart».
С вашим кодом все в порядке. Я просто копирую его и запускаю команду, и все работает нормально. команда: flutter pub run build_runner build --delete-conflicting-outputs
Сначала создайте пустой файл с именем Studylog.g.dart рядом с файлом Studylog.dart. Затем выполните команду:
dart run build_runner build
Если это по-прежнему не работает, удалите файл Studylog.g.dart и выполните следующие команды по порядку:
flutter clean
flutter pub get
flutter pub outdated
dart run build_runner build
Второй код у меня работает хорошо. Спасибо!
Какое у тебя имя файла? Это -> "studylog.dart"