我与Hive Packages合作,在我的项目中实现了模块化。
首先,我使用运行命令network
创建名称为flutter create --template=package network
的软件包,我引用了this。
此软件包包括我的项目模型。之后,我创建了模型用户,然后运行命令来构建模型flutter packages pub run build_runner build --delete-conflicting-outputs
:
import 'package:hive/hive.dart';
part 'user_model_hive.g.dart';
@HiveType()
class UserModelHive extends HiveObject {
@HiveField(0)
DateTime id;
@HiveField(1)
String giverName;
@HiveField(2)
String pinCodeNumber;
UserModelHive({this.id, this.giverName, this.pinCodeNumber});
}
但是我遇到这样的错误Could not find package "build_runner". Did you forget to add a dependency?
pub finished with exit code 65
,我确定我的软件包network
中已经包含了build_runner pubspec.yaml 。
name: network
description: A new Flutter package project.
version: 0.0.1
author:
homepage:
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
hive: ^1.1.1
hive_flutter: ^0.2.1
dev_dependencies:
flutter_test:
sdk: flutter
hive_generator: ^0.5.2
build_runner: ^1.7.2
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec
# The following section is specific to Flutter.
flutter:
# To add assets to your package, add an assets section, like this:
# assets:
# - images/a_dot_burr.jpeg
# - images/a_dot_ham.jpeg
#
# For details regarding assets in packages, see
# https://flutter.dev/assets-and-images/#from-packages
#
# An image asset can refer to one or more resolution-specific "variants", see
# https://flutter.dev/assets-and-images/#resolution-aware.
# To add custom fonts to your package, add a fonts section here,
# in this "flutter" section. Each entry in this list should have a
# "family" key with the font family name, and a "fonts" key with a
# list giving the asset and other descriptors for the font. For
# example:
# fonts:
# - family: Schyler
# fonts:
# - asset: fonts/Schyler-Regular.ttf
# - asset: fonts/Schyler-Italic.ttf
# style: italic
# - family: Trajan Pro
# fonts:
# - asset: fonts/TrajanPro.ttf
# - asset: fonts/TrajanPro_Bold.ttf
# weight: 700
#
# For details regarding fonts in packages, see
# https://flutter.dev/custom-fonts/#from-packages
我已经使用了此命令,但是什么也没发生
flutter packages get
和flutter pub get
答案 0 :(得分:3)
我也遇到了同样的错误。我已经通过在 dev_depndencies 中添加 build_runner 来解决它,在 pubspec.yaml 文件中,如 -
dev_dependencies:
build_runner: ^1.3.1
mobx_codegen: ^0.3.9
答案 1 :(得分:0)
如评论中分享的 GitHub 问题所述,该问题是由从不同目录运行应用程序引起的。在这种情况下,应用程序在发布的问题中以 root 身份运行。问题已通过从 /network
运行应用程序解决。
答案 2 :(得分:0)
我遇到过这个问题
我更改了我的模型类 @HiveType() 注释
@HiveType(0)
就这样。问题解决了。
(我在这里发帖是为了未来面临这个问题的开发者)